Проблема в том, что класс "times"
в chron не предоставляет метод rep
. Если мы добавим один, то это сработает.
library(chron)
rep.times <- function(x, ...) times(rep(as.numeric(x), ...))
# from question:
X <- seq(1,10,1)
tdata <- as.data.frame(X)
tdata$T3AM <- times(3/24)
tdata$T3AMx <- times(ifelse(tdata$X>0,3/24,3/24))
дает:
> tdata
X T3AM T3AMx
1 1 03:00:00 03:00:00
2 2 03:00:00 03:00:00
3 3 03:00:00 03:00:00
4 4 03:00:00 03:00:00
5 5 03:00:00 03:00:00
6 6 03:00:00 03:00:00
7 7 03:00:00 03:00:00
8 8 03:00:00 03:00:00
9 9 03:00:00 03:00:00
10 10 03:00:00 03:00:00
Обратите внимание, что Курт только что добавил rep.times
к хрону 2.3-53, который теперь должен быть на CRAN.