as.Date不在R工作

时间:2015-03-12 18:25:13

标签: r

我的数据集的日期格式如下。还有一些重复的日期。我需要根据日历顺序中的日期对数据进行排序。 所以"Sep 20, 2010", "Mar 5, 2011", "Mar 9, 2011"等等。我尝试了以下但它给了我一个错误。

as.Date(date)
Error in charToDate(x) : 
  character string is not in a standard unambiguous format

我也尝试过排序(日期),但它按月按字母顺序对日期进行排序。如何按日历顺序对此类日期进行排序?

date<-c("Mar  9, 2011", "Sep 30, 2011", "Sep 20, 2010", "Mar  5, 2012", "Jul 11, 2012", 
        "Jul 11, 2012","Mar 26, 2013", "Sep 23, 2013", "Apr  7, 2011", "Apr 22,  2013", 
        "Apr 26, 2012")

1 个答案:

答案 0 :(得分:1)

您需要的是format=函数中的as.Date()参数。因此,如果date是您在帖子中定义的向量,则可以执行

date <- sort(as.Date(date, format="%b %d, %Y"))

%b是缩写的月份名称,例如月

%d是该月的数字日

%Y是年份

然后,使用sort()函数可以正确排序按日历日期升序的向量。