【发布时间】:2018-08-21 07:42:17
【问题描述】:
看起来很简单,对我来说是一个脑筋急转弯。 我得到了这个
times1 <- c(0000, 0720, 2315, 0600, 1150, NA, 0000)
我想用我得到lubridate格式的hm函数在几小时和几分钟内转换这个数字。
非常感谢您的帮助! 最良好的祝愿, 罗宾
【问题讨论】:
标签: r data-conversion lubridate
看起来很简单,对我来说是一个脑筋急转弯。 我得到了这个
times1 <- c(0000, 0720, 2315, 0600, 1150, NA, 0000)
我想用我得到lubridate格式的hm函数在几小时和几分钟内转换这个数字。
非常感谢您的帮助! 最良好的祝愿, 罗宾
【问题讨论】:
标签: r data-conversion lubridate
由于您的目标是转换为小时和分钟,因此您需要使用 hm 函数而不是 hms 函数:
times1 <- c('0000', '0720', '2315', '0600', '1150', NA, '0000')
hm(sub("(\\d{2})","\\1:",times1))
[1] "0S" "7H 20M 0S" "23H 15M 0S" "6H 0M 0S" "11H 50M 0S"
[6] NA "0S"
【讨论】:
试试这个选项:
times1 <- c('0000', '0720', '2315', '0600', '1150', NA, '0000')
ts <- ifelse(is.na(times1),
NA,
paste0(substr(times1, 1, 2), ":", substr(times1, 3, 4), ":00"))
x <- hms(ts)
【讨论】: