如何在时间列中添加秒数
How to add seconds to time column
我在 R 中有一个“时间”列,在 HH:MM:SS 中有一组字符时间值
但是,有些时间没有秒,这使得从 char 到 chron() 的转换不可能
示例:
图书馆(时间)
x <- c("08:25:18","08:25","08:24:57","08:24:47")
我想将 x 转换为 chron(),但如果没有秒,它会将值转换为 N/A
我怎样才能将 :00 秒添加到那些需要它的人身上?谢谢
我们可以转换为日期时间,format
然后应用 times
library(chron)
library(lubridate)
out1 <- times(format(parse_date_time(x, c('HMS', 'HM')), "%H:%M:%S"))
str(out1)
#'times' num [1:4] 08:25:18 08:25:00 08:24:57 08:24:47
# - attr(*, "format")= chr "h:m:s"
或在chron
中指定times
chron(times = format(parse_date_time(x, c('HMS', 'HM')), "%H:%M:%S"))
或者使用 data.table
中的 as.ITime
可以工作
library(data.table)
as.ITime(x)
#[1] "08:25:18" "08:25:00" "08:24:57" "08:24:47"
我在 R 中有一个“时间”列,在 HH:MM:SS 中有一组字符时间值 但是,有些时间没有秒,这使得从 char 到 chron() 的转换不可能
示例:
图书馆(时间)
x <- c("08:25:18","08:25","08:24:57","08:24:47")
我想将 x 转换为 chron(),但如果没有秒,它会将值转换为 N/A
我怎样才能将 :00 秒添加到那些需要它的人身上?谢谢
我们可以转换为日期时间,format
然后应用 times
library(chron)
library(lubridate)
out1 <- times(format(parse_date_time(x, c('HMS', 'HM')), "%H:%M:%S"))
str(out1)
#'times' num [1:4] 08:25:18 08:25:00 08:24:57 08:24:47
# - attr(*, "format")= chr "h:m:s"
或在chron
times
chron(times = format(parse_date_time(x, c('HMS', 'HM')), "%H:%M:%S"))
或者使用 data.table
中的 as.ITime
可以工作
library(data.table)
as.ITime(x)
#[1] "08:25:18" "08:25:00" "08:24:57" "08:24:47"