我有一个包含4列的数据框(start,starts.ms,end和end.ms),我的目标是使用这些不同的变量计算每次观察的持续时间。
start <- c("25/11/14 16:59:46", "25/11/14 16:59:29 ", "25/11/14 16:58:04")
start.ms <- c(976, 456, 30)
end <- c("25/11/14 17:00:00", "25/11/14 17:00:00", "25/11/14 17:00:00")
end.ms <- c(50, 111, 150)
df <-data.frame(start, start.ms, end, end.ms)
df$start.b <- with(df, paste(start, start.ms, sep = "."))
df$end.b <- with(df, paste(end, end.ms, sep = "."))
在此之后,我想将最后两列转换为数据变量并将它们区分开以获得持续时间! 当我使用as.Date或strptime时,R返回我的NA值或没有... 提前谢谢。
编辑:对于那些使用&#34; strptime&#34;功能不要忘记添加&#34;选项(digits.secs = 3)&#34;如果你有milleseconds,输出将是POSIXlt格式。
答案 0 :(得分:1)
将评论作为答案发布。
op <- options(digits.secs=3)
strptime(df$start.b, format='%d/%m/%y %H:%M:%OS')
#[1] "2014-11-25 16:59:46.976 EST" "2014-11-25 16:59:29.000 EST"
#[3] "2014-11-25 16:58:04.300 EST"