如何将数字向量转换为日期?

时间:2017-02-22 19:42:26

标签: r date

我需要使用“date”将以下名为DATE的向量转换为日期:

DATE <- c(2015-03-20, 2015-03-23, 2015-03-24, 2015-03-25, 2015-03-26, 2015-03-27, 2015-03-30, 2015-03-31)

我无法弄清楚如何将向量转换为日期而不向向量保持的每个值添加引号“”

DATE <- as.Date(c("2015-03-20", "2015-03-23", "2015-03-24", "2015-03-25", "2015-03-26", "2015-03-27", "2015-03-30", "2015-03-31"))

是否有一个名为“date”(没有大写字母D)的类可以自动将向量转换为日期?

谢谢!

1 个答案:

答案 0 :(得分:3)

我不确定如何以这种输入结束。实际上,在将输入存储在变量中之前,输入将被减去数字(2015 - 03 - 20 = 1992)。

您需要提供字符串输入。但是,无需为每个值添加"。您可以将整个内容读作一个字符串(仅在开头和结尾添加")然后使用R进行处理。具体来说,使用strsplit将字符串拆分为,然后使用as.Date将值转换为日期。阅读?strptime,详细了解format

DATE <- c("2015-03-20, 2015-03-23, 2015-03-24, 2015-03-25, 2015-03-26, 2015-03-27, 2015-03-30, 2015-03-31")
DATE = unlist(strsplit(DATE,", ")) #Split into individual values and convert to array
as.Date(as.character(DATE), format = "%Y-%m-%d")
[1] "2015-03-20" "2015-03-23" "2015-03-24" "2015-03-25" "2015-03-26" "2015-03-27" "2015-03-30" "2015-03-31"