我有一个数据框,其中日期为列名。日期在实际日期之前有一个“x”。是否有可能将列名称转换为数据格式,尽管它之前是“x”? 我尝试了下面的内容,这并没有让我希望得到结果:
Date<-c("X2013.02","X2013.03","X2013.04","X2013.05")
as.Date(Date,"%Y,%m")
[1] NA NA NA NA
as.Date(Date,"%XY,%m")
[1] NA NA NA NA
as.Date(Date,"X%Y,%m")
有人能建议我解决方案吗?
答案 0 :(得分:2)
Date<-c("X2013.02","X2013.03","X2013.04","X2013.05")
as.Date(paste0(Date, ".01"),"X%Y.%m.%d")
#[1] "2013-02-01" "2013-03-01" "2013-04-01" "2013-05-01"
请注意Date
需要一天。另外,您可能需要考虑在使用check.names = FALSE
或其中一位亲属导入数据时设置read.table
。
答案 1 :(得分:2)
“zoo”包中还有as.yearmon
:
library(zoo)
as.yearmon(Date, format="X%Y.%m")
# [1] "Feb 2013" "Mar 2013" "Apr 2013" "May 2013"
as.Date(as.yearmon(Date, format="X%Y.%m"))
# [1] "2013-02-01" "2013-03-01" "2013-04-01" "2013-05-01"