我试图更新庞大数据集的两列(> 45毫米行)。 基本上列是字符格式,我试图将其转换为数字。 这是示例数据' s1':
id path convert start stop
1 1 0 05SEP2015:12:38:55 05SEP2015:12:38:55
2 1 0 09SEP2015:01:22:54 09SEP2015:01:22:54
我使用以下代码:
library(lubridate)
apply(s1, 1, function(row){
s1$Start <- as.numeric(dmy_hms(row[4]))
#Similarly code for stop column
# s1$stop <- as.numeric(dmy_hms(row[5]
return(s1)
})
基本上我想将开始文本转换为日期,然后将其更改为数字,然后将其替换为数据框本身。
所以我期待这样的输出:
[[1]]
id path convert start stop
1 1 0 1441456735 05SEP2015:12:38:55
2 1 0 1441761774 09SEP2015:01:22:54
但我得到了:
[[1]]
id path convert start stop
1 1 0 1441456735 05SEP2015:12:38:55
2 1 0 1441456735 09SEP2015:01:22:54
[[2]]
id path convert start stop
1 1 0 1441761774 05SEP2015:12:38:55
2 1 0 1441761774 09SEP2015:01:22:54
看起来它正在制作我不想要的数据框列表。
关于这一点的任何指示,因为我到目前为止还差不多。
答案 0 :(得分:1)
为什么不
s1[,"start"] = as.numeric(dmy_hms(s1[,"start"]))
和
s1[,"stop"] = as.numeric(dmy_hms(s1[,"stop"]))