我有一个数据集,我在其中使用 difftime 来计算 R 中两次之间的差异。对于从一天开始并持续到午夜之后的 4 条记录,我得到了无意义的答案。
数据集
time2<-dput(time2)
structure(list(StationID = c(201707123L, 201710032L, 201710148L,
201710188L), TowStartTime = structure(c(-2209057289, -2209057558,
-2209057779, -2209057812), class = c("POSIXct", "POSIXt"), tzone = ""),
TowEndTime = structure(c(-2209142790, -2209143047, -2209143555,
-2209143587), class = c("POSIXct", "POSIXt"), tzone = ""),
tow_time = c(-1425.01666666667, -1424.81666666667, -1429.6,
-1429.58333333333)), .Names = c("StationID", "TowStartTime",
"TowEndTime", "tow_time"), row.names = c(572L, 783L, 1003L, 1079L
), class = "data.frame")
用于计算 tow_tim 的代码
time2$tow_time<-as.numeric(difftime(strptime(time2$TowEndTime,"%Y-%m-%d %H:%M:%S"),
strptime(time2$TowStartTime,"%Y-%m-%d %H:%M:%S")),units="mins")
我在开始时间之前有结束时间,因为我不想有负值。无论哪种方式,我都得到了相同的时差答案,它只是不是负值。有没有办法用 difftime 或 R 中的其他函数来解决午夜过时的问题?