【发布时间】:2015-03-19 09:00:06
【问题描述】:
我想从data.table 中读取带有fread 的文件,该文件有一列带有“YYYY-MM-DD”格式日期的列。默认情况下,fread 将该列读取为chr。但是,我希望将列设置为 Date,与应用 as.Date 时获得的方式相同。
我试过用
dt[,starttime.date := as.Date(starttime.date)]
但运行需要很长时间(我有大约 4300 万行)。
【问题讨论】:
-
看看
?fread,描述下的第二段。 -
@Arun
as.IDate会比as.Date快吗? -
谢谢。
as.IDate并不快,与as.Date耗时相同。 -
我发现在 as.Date 中添加格式字符串通常会有所帮助,例如
as.Date(d, format='%Y-%m-%d')。您可以尝试的另一件事是,因为您有大量的行并且可能是一组较小的唯一日期,所以按日期列分组并按组进行转换。
标签: r data.table