Я пытаюсь найти разницу между двумя датами в часах, и для различий во времени, которые происходят в течение более одного дня, я получаю действительно возмутительные и неправильные числа.
Вот примерданных:
Observation Status DateTime
1 Active 2016-11-04 22:32:49
2 Inactive 2016-11-05 08:30:56
Я выполняю эту команду:
getDiff <- function(x) {
difftime(shift(x, fill = NA, type = "lead"), x, units = "hours")
}
diff_result <- dataframe[, time.diff := ifelse(Status == "Active",
getDiff(DateTime), NA)]
И получаю следующий вывод:
Observation Status DateTime Time.diff
1 Active 2016-11-04 22:32:49 8757.884
2 Inactive 2016-11-05 08:30:56
Эта команда работает для всех остальныхразличия, которые не случаются в отдельные дни.Правильный ответ должен быть около 10 часов, не более 8000.
Также
> class(DataFrame$DateTime)
[1] "POSIXct" "POSIXt"
Заранее спасибо!