我有一个包含两列的数据集,日期和时间,并且我想将其转换为包含日期和时间的列"2014-02-01 13:04:05"
,例如:
我知道执行此操作的代码是:
as.POSIXct(paste(data$Date, data$Time),format="%Y-%m-%d %H:%M:%S")
由于数据集中的问题,这将返回很多正确的值,但也返回NA。我的问题出在我的数据集中,该数据集被视为data$Time
因素,时间范围从02:00:00
-开始25:59:00
。
所以我想要的是截止日期,data$Time
如果结束了,24:00:00
它将为日期增加另一天并显示正确的时间。
例如:"2014-01-31 25:30:00"
将成为"2014-02-01 01:30:00"
hms
从lubridate使用:
library(lubridate)
x <- "2014-01-31 25:30:00" # input
as.Date(x) + hms(sub(".* ", "", x))
给予:
[1] "2014-02-01 01:30:00 UTC"
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句