在R中的时间变量中替换NAs

在R中的时间变量中替换NAs,r,R,我在处理数据帧中的NAs时遇到问题 包含所有NAs的变量是HMS格式的时间变量。我想用00:00:00替换NAs 这是我正在看的一个例子 < time> 00:00:07, 00:00:02, NA, 00:00:00, NA, 00:00:00, 00:00:00, NA, 00:00:00 我尝试运行以下代码,但它返回相同的数据,没有任何更改 K$hold_time[is.na(k$hold_time)] <- 0 看起来等待时间属于hms类。尝试使用: k$hold_

我在处理数据帧中的NAs时遇到问题

包含所有NAs的变量是HMS格式的时间变量。我想用00:00:00替换NAs

这是我正在看的一个例子

< time> 00:00:07, 00:00:02, NA, 00:00:00, NA, 00:00:00, 00:00:00, NA, 00:00:00
我尝试运行以下代码,但它返回相同的数据,没有任何更改

K$hold_time[is.na(k$hold_time)] <- 0
看起来等待时间属于hms类。尝试使用:

k$hold_time[is.na(k$hold_time)] <- hms::hms(0)
可复制示例:

set.seed(123)
k <- data.frame(hold_time = hms::hms(sample(100, 10)))
k$hold_time[c(5, 8)] <- NA
k

#   hold_time
#1   00:00:31
#2   00:01:19
#3   00:00:51
#4   00:00:14
#5         NA
#6   00:00:42
#7   00:00:50
#8         NA
#9   00:01:37
#10  00:00:25


k$hold_time[is.na(k$hold_time)] <- hms::hms(0)
k
#   hold_time
#1   00:00:31
#2   00:01:19
#3   00:00:51
#4   00:00:14
#5   00:00:00
#6   00:00:42
#7   00:00:50
#8   00:00:00
#9   00:01:37
#10  00:00:25
k$hold_time[is.na(k$hold_time)] <- hms::hms(0)
set.seed(123)
k <- data.frame(hold_time = hms::hms(sample(100, 10)))
k$hold_time[c(5, 8)] <- NA
k

#   hold_time
#1   00:00:31
#2   00:01:19
#3   00:00:51
#4   00:00:14
#5         NA
#6   00:00:42
#7   00:00:50
#8         NA
#9   00:01:37
#10  00:00:25


k$hold_time[is.na(k$hold_time)] <- hms::hms(0)
k
#   hold_time
#1   00:00:31
#2   00:01:19
#3   00:00:51
#4   00:00:14
#5   00:00:00
#6   00:00:42
#7   00:00:50
#8   00:00:00
#9   00:01:37
#10  00:00:25