在R中对月份进行排序

shr*_*att 10 r date

我想对月份名称进行排序.当我使用该strptime函数时,它返回一个错误,因为属性值只包含月份名称.当我使用该sort函数时,月份按字母顺序排序.

csg*_*pie 23

您始终可以将数据转换为系数.例如,假设我们有

x = c("January", "February", "March", "January")  
Run Code Online (Sandbox Code Playgroud)

然后转换为一个因素,我们有:

x_fac = factor(x, levels = month.name)
Run Code Online (Sandbox Code Playgroud)

哪个在排序上给出:

R> sort(x_fac)
[1] January  January  February March   
12 Levels: January February March April May June July August ... December
Run Code Online (Sandbox Code Playgroud)

  • 常量`month.name`和`month.abb`在这方面很有用,因此您不需要输入月份名称等.但仅对英文月份名称和缩写有用. (4认同)
  • 另外,请注意“Feburary”——您不太可能(我希望)在真实数据中找到它。也许这是@GavinSimpson 建议的部分原因 (2认同)