将“x 小时 y 分钟”的时间格式转换为数字

Sci*_*ens 2 time timestamp r transform minute

我有一个变量指示事件发生后的时间,它的编码如下:

time_since_event <- c("18 m", "56 m", "2 h 30 m", "18 h 2 m")
Run Code Online (Sandbox Code Playgroud)

我希望它是数字,并始终表示事件发生后的分钟数:

time_since_event_min <- c(18,56,150,1082)
Run Code Online (Sandbox Code Playgroud)

Ron*_*hah 5

您可以使用lubridate函数:

library(lubridate)
(time_since_event %>% toupper %>% period %>% period_to_seconds())/60
#[1]   18   56  150 1082
Run Code Online (Sandbox Code Playgroud)