读取csv值as.date返回NA

时间:2016-07-13 12:25:46

标签: r csv na

我正在尝试使用R读取csv值as.date。我的csv文件只包含一列,其日期列出如下:

     x
1   20010101
2   20010117
3   20010201
4   20010217
5   20010301
6   20010317
7   20010401
8   20010417
9   20010501
10  20010517

我使用的脚本是:

d <- read.csv("D:\\test.csv", header = TRUE, sep = "", stringsAsFactors = FALSE)
> str(d)
'data.frame':   345 obs. of  1 variable:
 $ x: int  20010101 20010117 20010201 20010217 20010301 20010317 20010401 20010417 20010501 20010517 ...
date_EVI <- as.Date(paste(d$x), "%mm%dd%YYYY") 

但回报都是NA。

请问任何建议?

2 个答案:

答案 0 :(得分:0)

看起来您的日期格式有误。试试%Y%m%d

例如:

dates <- c("20010101", "20010117", "20010517")
as.Date(dates, "%Y%m%d")

并应用于您的代码:

d <- read.csv("D:\\test.csv", header = TRUE, sep = "", stringsAsFactors = FALSE)
date_EVI <- as.Date(as.character(d$x), "%Y%m%d")

答案 1 :(得分:-1)

非常感谢所有的建议。

更改此行:

`date_EVI <- as.Date(paste(d$x), "%mm%dd%YYYY")`

对此:

 date_EVI <- as.Date(as.character(d$x),  "%Y%m%d")

已经完美地解决了这个问题。 谢谢Tensibai