使用库(lubridate)根据 R 中的日期拆分数据集

Splitting dataset based on date in R, using library (lubridate)

在拆分数据集时,我遇到了以下错误,并寻求一些建议来克服它:

dt=read.csv("C:/xx/fData.csv")
testdata = dt[year(dt$date) < 2010,]
valid = dt[year(dt$date) > 2010,]

> training = dt[year(dt$date) < 2010,]
Error in as.POSIXlt.character(as.character(x), ...) : 
character string is not in a standard unambiguous format
> testing = dt[year(dt$date) > 2010,]
Error in as.POSIXlt.character(as.character(x), ...) : 

ps: fData 看起来像

    | date   |   number
----------------------
1   |1/1/2011|  0
2   |1/2/2011|  0

鉴于字符串的第一部分是月份和第二部分是月份,您应该在调用 year 函数之前将字符串转换为日期格式

dt$date <- as.Date(dt$date,'%d/%m/%Y')