在R中对“年/月”列进行排序

时间:2014-03-07 18:03:19

标签: r sorting date

我正在尝试按R中的“year.month”列对数据框进行排序,但仍停留在“as.Date”函数中。我尝试了其他几种方法但没有成功。我可以得到一些帮助吗? 这里是。 我的代码是

temp2_sort <- temp2[with(temp2, order(as.Date(year.month, format = "%y-%m"))),]
or 
temp2_sort <- temp2[with(temp2, order(as.Date(year.month, format = "%y-%b"))),]

但它们都不起作用。

谢谢!

year.month  sale
2006/2  437
2006/3  52299
2006/9  175983
2006/12 57560
2007/2  10798
2007/3  12926
2006/5  61039
2006/8  135601
2006/6  54336
2006/10 72052

1 个答案:

答案 0 :(得分:3)

使用lubridate

 dat[order(ymd(dat$year.month)),]

使用as.Date你应该添加一个虚拟日部分:

dat[order(as.Date(paste0(dat$year.month,'/1'),"%Y/%m/%d")),]