如何按字母顺序排序数据帧?

这个问题在这里已经有了答案:

  • 如何按多个列排序数据框? 16个答案

  • dplyr一个解决方案:

    library(dplyr)
    df %>%
      group_by(x) %>%
      arrange(c)
    

    或者正如@Akrun在下面的评论中提到的那样

    df %>%
      arrange(x,c)
    

    如果你对分组不感兴趣。 取决于你想要的。

    输出:

    Source: local data frame [5 x 2]
    Groups: x
    
      x c
    1 2 A
    2 2 D
    3 3 B
    4 3 C
    5 5 E
    

    在R中还有另一种解决方案,但它只有在您的x列按原样排序时才有效,或者您不介意更改它的顺序:

    > df[order(df$x, df$c), , drop = FALSE]
      x c
    2 2 A
    1 2 D
    4 3 B
    3 3 C
    5 5 E
    
    链接地址: http://www.djcxy.com/p/70847.html

    上一篇: how to order alphabetically rows of a data frame?

    下一篇: Reorder column names in R