R 两个POSIXct时间之间的中点

R 两个POSIXct时间之间的中点,r,posix,R,Posix,我想在stoptime和starttime之间取子午线或中点,然后用中点添加一个新列。它可以四舍五入到最接近的秒。在R中如何做到这一点?stoptime和starttime都是POSIXct格式。有没有比将difftime一分为二,然后添加到stoptime更简单的方法 > head(data) bikeid end.station.id start.station.id diff.time stoptime starttime 24 23966

我想在
stoptime
starttime
之间取子午线或中点,然后用中点添加一个新列。它可以四舍五入到最接近的秒。在R中如何做到这一点?
stoptime
starttime
都是POSIXct格式。有没有比将
difftime
一分为二,然后添加到
stoptime
更简单的方法

> head(data) bikeid end.station.id start.station.id diff.time stoptime starttime 24 23966 359 318 1505 2015-10-13 07:45:00 2015-10-13 08:10:05 28 23966 502 311 2072 2015-10-20 14:41:11 2015-10-20 15:15:43 58 17110 337 340 3338 2015-10-15 16:00:39 2015-10-15 16:56:17 74 23822 501 527 3478 2015-10-05 15:55:13 2015-10-05 16:53:11 83 16462 426 146 3368 2015-10-01 07:52:06 2015-10-01 08:48:14 89 23121 435 223 1499 2015-10-08 11:58:08 2015-10-08 12:23:07 您可以执行以下操作:

data$midtime <- as.POSIXct((as.numeric(stoptime) + as.numeric(starttime)) / 2, origin = '1970-01-01')

data$midtime我认为您需要修复dput输出
data$midtime <- as.POSIXct((as.numeric(stoptime) + as.numeric(starttime)) / 2, origin = '1970-01-01')