Я хочу рассчитать разницу двух инцидентов. Первые пять столбцов указывают дату события. Остальные пять столбцов указывают дату смерти.Разница во временной шкале
dat <- read.table(header=TRUE, text="
YEAR MONTH DAY HOUR MINUTE D.YEAR D.MONTH D.DAY D.HOUR D.MINUTE
2013 1 6 0 55 2013 1 6 0 56
2013 2 3 21 24 2013 2 4 23 14
2013 1 6 11 45 2013 1 6 12 29
2013 3 6 12 25 2013 3 6 23 55
2013 4 6 18 28 2013 5 3 11 18
2013 4 8 14 31 2013 4 8 14 32")
dat
YEAR MONTH DAY HOUR MINUTE D.YEAR D.MONTH D.DAY D.HOUR D.MINUTE
2013 1 6 1 55 2013 1 6 0 56
2013 2 3 21 24 2013 2 4 23 14
2013 1 6 11 45 2013 1 6 12 29
2013 3 6 12 25 2013 3 6 23 55
2013 4 6 18 28 2013 5 3 11 18
2013 4 8 14 31 2013 4 8 14 32
Я хочу, чтобы вычислить разницу времени (in minutes
). Следующий код никуда не денется. Временная метка будет выглядеть как 2013-04-06 04:08
.
library(lubridate)
dat$tstamp1 <- mdy(paste(dat$YEAR, dat$MONTH, dat$DAY, dat$HOUR, dat$MINUTE,sep = "-"))
dat$tstamp2 <- mdy(paste(dat$D.YEAR, dat$D.MONTH, dat$D.DAY, dat$D.HOUR, dat$D.MINUTE, sep = "-"))
dat$diff <- dat$tstamp2 -dat$tstamp2 ### want the difference in minutes
Как у вас есть как '0', так и' 24' как час под 'D.HOUR'? –
Хороший улов. Возможно, это ошибка в наборе данных. Починил это. –
Было бы более типичным иметь диапазон 0-23, а не 1-24. (Будет ли 24-й день после полуночи на следующий день? Если нет, тогда будет 1 означает 12:00 AM, а 2 означает 1:00 AM и т. Д.?) –