如果我有这些字符串:
df$value[1] = "3d 4H 59M"
df$value[2] = "7d 10H 46M"
df$value[3] = "12d 2H 4M"
d = days
H = Hours
M = Minutes
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,记录有时会给出带有2个数字的天数,带有1个数字的小时数.法线是每种类型的1到2个数字,D,H,M.在这种情况下,如何提取每个D,H,M的值?
数据
x <- c("3d 4H 59M", "7d 10H 46M", "12d 2H 4M")
Run Code Online (Sandbox Code Playgroud)
你可以使用stringr::str_match:
library(stringr)
values = c("3d 4H 59M", "7d 10H 46M", "12d 2H 4M")
dhm <- str_match(values, "([0-9]{1,2})d ([0-9]{1,2})H ([0-9]{1,2})M")[,-1]
storage.mode(dhm) <- "integer"
colnames(dhm) <- c("Days", "Hours", "Minutes")
dhm
# Days Hours Minutes
#[1,] 3 4 59
#[2,] 7 10 46
#[3,] 12 2 4
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
97 次 |
| 最近记录: |