在数据集中,我发现时间列有 1700、1410、845、1030 等。
数据集太大。
如何在 R 中将此格式(1700、1410、845、1030)转换为 17:00:00、14:10:00、8:45:00、10:30:00 格式?
最佳答案
我们可以将sub
与sprintf
一起使用。 sprintf
用于位数不同(3 或 4),对于 3 位数字,sprintf
在前面补一个 0 (%04d
) 以使其一致,同时在末尾附加 :00
,然后使用 sub
捕获第一个数字或字符 ((..)
),并替换为捕获组的反向引用 (\\1
),后跟 :
sub("^(..)", "\\1:", sprintf("%04d:00", df1$Time))
#[1] "17:30:00" "14:10:00" "08:45:00" "10:30:00"
数据
df1 <- structure(list(Time = c(1730, 1410, 845, 1030)), class = "data.frame",
row.names = c(NA,
-4L))
关于r - 如何将时间格式从 1730 更改为 17 :30:00 in R?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61415397/