我在R中遇到了日期问题。将T1和T2定义为带有6个小数位的POSIXct或POSIXlt格式的日期:
op <- options(digits.secs = 6)
T1 = strptime("2015.10.10 12:00:00.150150", "%Y.%m.%d %H:%M:%OS")
T2 = strptime("2015.10.10 16:30:15.212412", "%Y.%m.%d %H:%M:%OS")
如何以这种格式获取T1和T2之间的差异:
format = "%H:%M:%OS"
例如,定义日期之间的差异为:
diff = "04:30:15.062262"
我尝试了不同的方法,但都没有成功。
我的尝试:
T1 = strptime("2015.10.10 12:00:00.150150", "%Y.%m.%d %H:%M:%OS")
T2 = strptime("2015.10.10 16:30:15.212412", "%Y.%m.%d %H:%M:%OS")
h = difftime(T2,T1, units = "hours")
m = difftime(T2,T1, units = "mins")
s = difftime(T2,T1, units = "secs")
但是我不知道如何获取小数。
lubridate
软件包。我认为研究该软件包的文档将让您走得更远。 - Paul Hiemstraas.difftime(T2 - T1, format='%H:%M:%OS')
可以工作,但事实并非如此。我不明白为什么会有负评... - drmariodlubridate
包中的一个很好的函数可以得到类似但不完全相同格式的输出...lubridate::seconds_to_period(difftime(T2,T1, units='secs'))
- drmariod