应用as.Date返回NA

时间:2017-03-11 07:02:11

标签: r as.date

我的日期矢量看起来像这样(实际上矢量更长):

dta= data.frame(c("Mar 22, 2013", "Feb 4, 2013","Oct 3, 2016", "Apr 8, 2014", 
"Sep 6, 2013", "Jul 16, 2014"))
colnames(dta)<-c("time")

dta$time<-as.Date(dta$time, '%B %d, %Y')

现在,当我申请as.Date NA返回日期编号2和4.有人可以帮我弄清楚我错过了什么吗?提前谢谢!

1 个答案:

答案 0 :(得分:1)

我认为这是系统语言的问题。 我是意大利人,如果我执行你的代码,我会获得第3,第5和第6位的NA。 但是如果我执行:

dta= data.frame(c("Mar 22, 2013", "Feb 4, 2013","Ott 3, 2016", "Apr 8, 2014", 
              "Set 6, 2013", "Lug 16, 2014"))
colnames(dta)<-c("time")

dta$time<-as.Date(dta$time, '%B %d, %Y')

我没有得到任何NA。

我通过用英语设置工作日来解决:

Sys.setlocale("LC_TIME","C") # for Unix

对于Windows,以下应该可以使用(但我无法验证):

Sys.setlocale("LC_TIME","English") # for Windows