【发布时间】:2018-05-25 04:47:34
【问题描述】:
我有一个data.table score大小900MB的。有一列datetime这实质上是在格式@ 987654324日期时间@。我试图将类转换character这个特殊的列到POSIXlt使用下面的代码: P>
score[,newdate := as.POSIXlt.character(score[["datetime"]],tz="IST",format="%Y-%m-%d %H:%M:%S")][,datetime:=NULL]
此操作使尺寸211 GB的data.table。这里发生了什么。请帮忙。
dput(head(score))
structure(list(id1 = c(12234398L, 323437283L, 12343344L,
545465653L, 312342343L, 22344232L), id2 = c(216231535L,
324345453L, 345474698L, 87787950L, 656565531L, 565656657L),
Score = c(756L, 777L, 788L, 234L, 656L, 788L), datetime = c("2017-05-08 00:00:00.0000000",
"2018-07-12 01:24:46.0000000", "2015-16-02 00:00:00.0000000",
"2016-03-22 23:06:45.0000000", "2016-07-14 12:23:45.0000000",
"2014-05-03 03:33:13.0000000")), .Names = c("id1",
"id2", "Score", "datetime"), class = c("data.table",
"data.frame"), row.names = c(NA, -6L), .internal.selfref = <pointer:
0x190cc98>)
【问题讨论】:
-
你没有得到任何预警
tz="IST"? SPAN> -
@ MKR号为什么你认为它应该抛出一个警告? SPAN>
-
stackoverflow.com/questions/21487614/…我认为这可能是您的问题。 SPAN>
-
@ TUSHAR我认为问题是使用的
score[["datetime"]]。它的创建selfreference。为什么不能使用datetime代替? SPAN> -
@ MKR它不是问题,其
POSIXlt格式跨度>
标签: r data.table