我有两个来自不同数据帧的不同时间序列,具有不同的不规则格式,但问题是一样的。我只想提取小时、分钟、秒和毫秒。
时间序列如下所示:
ts1
08:27:23,445
08:27:24,280
08:27:25,115
...
我试过了
strptime("08:27:23,445", "%H:%M:%OS")
[1] "2013-05-23 08:27:23"
我丢失了毫秒信息并获得了无用的(对我而言)日期信息。
ts2
Fri Apr 19 2013 08:39:41 GMT+0200
Fri Apr 19 2013 08:39:43 GMT+0200
Fri Apr 19 2013 08:39:45 GMT+0200
...
我试过了
strptime("Fri Apr 19 2013 08:39:41 GMT+0200", "%a %b %d %Y %H:%M:%S %Z")
[1] NA
最后,我想将 ts1 和 ts2 分别转换为具有相同格式(以毫秒为单位)的新时间序列,例如:
ts1
08:27:23,445
ts2
08:39:41,000
相同的格式对我来说很重要,因为稍后我想对这两个时间序列进行操作。例如:匹配时间序列,计算差异等......
谢谢您的帮助!
更新:添加输入
这两个数据集都非常长,这就是我试图减少它们的原因。
ts1
structure(list(t = structure(1:9, .Label = c("08:27:23,445",
"08:27:24,280", "08:27:25,115", "08:27:25,960", "08:27:26,780",
"08:27:27,540", "08:27:28,295", "08:27:29,075", "08:27:29,910"), class = "factor")), .Names = "t", row.names = c(NA, -9L
), class = "data.frame")
ts2
structure(list(t = structure(c(1L, 2L, 3L, 4L, 5L, 6L, 6L, 7L,
8L), .Label = c("Fri Apr 19 2013 08:39:41 GMT+0200", "Fri Apr 19 2013 08:39:43 GMT+0200",
"Fri Apr 19 2013 08:39:45 GMT+0200", "Fri Apr 19 2013 08:39:49 GMT+0200",
"Fri Apr 19 2013 08:39:51 GMT+0200", "Fri Apr 19 2013 08:39:53 GMT+0200",
"Fri Apr 19 2013 08:39:59 GMT+0200", "Fri Apr 19 2013 08:40:05 GMT+0200",
"Fri Apr 19 2013 08:40:06 GMT+0200"
), class = "factor")), .Names = "t", row.names = c(NA, -9L), class = "data.frame")