Saya mencoba menghitung difftime dalam hitungan menit antara dua kolom dan hasilnya sepertinya tidak benar. BLOCK_DATE_TIME.x a1_0 perbedaan 2019-04-26 19:07:00 2019-04-27 09:00:00 773 2019-08-27 08:30:00 ...

1
José Campelo 5 April 2021, 21:03

1 menjawab

Jawaban Terbaik

Ada kemungkinan kolom tersebut bukan kelas Datetime. Jika kita mengonversi ke POSIXct, itu berfungsi seperti yang diharapkan

library(dplyr)
library(lubridate)
test1 <- test %>% 
      mutate(across(c(BLOCK_DATE_TIME.x, a1_0), ymd_hms),
         diff = difftime(a1_0, BLOCK_DATE_TIME.x, units = "mins"))
test1
#    BLOCK_DATE_TIME.x                a1_0     diff
#1 2019-04-26 19:07:00 2019-04-27 09:00:00 833 mins
#2 2019-08-27 08:30:00 2019-08-27 09:00:00  30 mins

Data

test <- structure(list(BLOCK_DATE_TIME.x = c("2019-04-26 19:07:00", 
"2019-08-27 08:30:00"
), a1_0 = c("2019-04-27 09:00:00", "2019-08-27 09:00:00")), row.names = c(NA, 
-2L), class = "data.frame")
1
akrun 5 April 2021, 18:07