R更改日期YY-MM-DD hh:MM为起始时间(天秒)
我有这样的日期输入(目前作为字符类): 希望有这样的输出:R更改日期YY-MM-DD hh:MM为起始时间(天秒),r,date,datetime,posixlt,R,Date,Datetime,Posixlt,我有这样的日期输入(目前作为字符类): 希望有这样的输出: output=c(127.472338, 127.473032) 这是自原点(2013-01-01 00:00:00)起的时间,以天和秒为单位 之前,我使用了输出格式的数据,并使用以下方法将其重新转换为输入格式: temp=as.POSIXlt(output*24*3600,origin='2013-01-01 00:00:00', tz="Etc/GMT+0") 我如何重写它以获得所需的输出? 提前谢谢 使用difftime(或-
output=c(127.472338, 127.473032)
这是自原点(2013-01-01 00:00:00)起的时间,以天和秒为单位
之前,我使用了输出格式的数据,并使用以下方法将其重新转换为输入格式:
temp=as.POSIXlt(output*24*3600,origin='2013-01-01 00:00:00', tz="Etc/GMT+0")
我如何重写它以获得所需的输出?
提前谢谢 使用difftime
(或-
):
也许
as.numeric(difftime(as.POSIXlt(input),as.POSIXlt('2013-01-01 00:00'))
你甚至不需要as.POSIXct
部分:difftime(input,“2013-01-01”,units=“days”)
工作得很好。@nicola:虽然是真的,但我并不特别喜欢从字符到日期的隐式转换/POSIXt。你完全正确。我只是想强调在R中获得一些结果是多么容易。@nicola:是的。。。太容易了。:)非常感谢你们两位:)
temp=as.POSIXlt(output*24*3600,origin='2013-01-01 00:00:00', tz="Etc/GMT+0")
> difftime(as.POSIXct(input), as.POSIXct("2013-01-01"))
Time differences in days
[1] 127.4307 127.4314
> as.POSIXct(input) - as.POSIXct("2013-01-01")
Time differences in days
[1] 127.4307 127.4314