在tidyverse中按字母顺序排列列

5n0oy7gb  于 2023-03-10  发布在  其他
关注(0)|答案(2)|浏览(190)

我有:

df = data.frame(col1 = c("A","b","B","C","c"))

我想要:

但是当我尝试使用arrange和tidyverse时,我得到:

> df %>% arrange(col1)
  col1
1    A
2    B
3    C
4    b
5    c
zrfyljdw

zrfyljdw1#

您可以用途:

library(dplyr)

data.frame(col1 = c("A","b","B","C","c")) %>% 
  arrange(tolower(col1), col1)
#>   col1
#> 1    A
#> 2    B
#> 3    b
#> 4    C
#> 5    c
fxnxkyjh

fxnxkyjh2#

此输出将按字母顺序对列进行排序,大写条目排在前面:

df %>%
  arrange(col1) %>%
  arrange(tolower(col1))

#>   col1
#> 1    A
#> 2    B
#> 3    b
#> 4    C
#> 5    c

相关问题