嘿,我正在研究 SparkR,我有这个带有数据字段的数据集
2013-11-01 00:00
来自 str 的结果
Time : chr "2013-11-01 00:00" "2013-11-01 00:10" "2013-11-01 00:20" "2013-11-01 00:30" ...
Run Code Online (Sandbox Code Playgroud)
现在我需要将此数据转换为毫秒。注意:我需要小时和分钟。
当我尝试一个简单的时,as.numeric它给了我 NA。我能怎么做?
Ps:我搜索了类似的问题,当我尝试一些解决方案时,当我使用用户format属性时,小时和分钟也会消失。
我现在做了这个我需要从“2013-11-01 09:10”到->1383293400000的逆过程
a<-TrentoTo$TimeInterval[1] #1383293400000
b<-as.POSIXct((a)/1000, origin = "1970-01-01")
b<-strftime(b, format="%Y-%m-%d %H:%M") #"2013-11-01 09:10"
Run Code Online (Sandbox Code Playgroud)
首先,您必须POSIXct在此线程中转换为:处理 R 中的时间戳。所以代码应该是:
as.numeric(as.POSIXct(Time))
Run Code Online (Sandbox Code Playgroud)
使用您自己的示例解决方案
a <- 1383293400000
b <- as.POSIXct((a)/1000, origin = "1970-01-01")
b <- strftime(b, format="%Y-%m-%d %H:%M") #"2013-11-01 09:10"
Run Code Online (Sandbox Code Playgroud)
产出
> as.numeric(as.POSIXct(b))*1000 == a
[1] TRUE
Run Code Online (Sandbox Code Playgroud)