Работа с сотнями секунд с помощью пакета chron или изменения точности - PullRequest
5 голосов
/ 17 августа 2011

Я использую пакет chron и пытаюсь работать с сотнями секунд, например:

library(chron)
tms <- times(c("00:01:30.81", "00:01:33.38", "00:01:34.10", "00:01:37.09", 
               "00:01:37.29", "00:01:36.96", "00:01:37.65", "00:01:37.63", 
               "00:01:36.80", "00:01:40.06"))
mean(tms)
# [1] 00:01:36
var(tms)
# [1] 9.432812e-10
sum(tms)
# [1] 00:16:02

Что времена не принимаются с сотыми долями секунды, как, например, когда я делаю это:

tms
# [1] 00:01:31 00:01:33 00:01:34 00:01:37 00:01:37 00:01:37 00:01:38 00:01:38
# [9] 00:01:37 00:01:40

это только использование секунд и все, округление, я хочу точное время или среднее ... как я могу это исправить?

1 Ответ

6 голосов
/ 17 августа 2011

Он есть, но отображает только часть секунд. Попробуйте это:

# x should be a times object
show100s <- function(x) sprintf("%s.%02d", format(x), 
    round(100 * 3600 * 24 * (as.numeric(x) - as.numeric(trunc(x, "sec")))))

и запустите его так:

library(chron)
tt <- times("11:12:13.81")
tt
## [1] 11:12:14
show100s(tt)
## [1] "11:12:14.81"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...