1

"25:15:00"「翌日の1:15」のような時間を解析できる機能(組み込みまたはパッケージ)はありますか? 残念ながら、仕様( に相当)ではas.POSIXct気に入らず、%X%H:%M:%S

> as.POSIXct('25:15:00', format='%X')
[1] NA
> as.POSIXct('15:15:00', format='%X')
[1] "2013-05-24 15:15:00 CEST"

strptimeドキュメントで適切な変換仕様が見つかりません。

4

2 に答える 2

2

完全にテストされていませんが、この機能を試すことができます

parse_time <- function(x, format = "%X") {
    hour <- as.numeric(substr(x, 1, 2))
    delta <- ifelse(hour >= 24, 24 * 3600, 0)
    hour <- hour %% 24
    date <- paste0(hour, substr(x, 3, nchar(x)))
    strptime(date, format = format) + delta
}

parse_time(c('25:15:00', "23:10:00"))
##[1] "2013-05-25 01:15:00 GMT" "2013-05-24 23:10:00 GMT"
于 2013-05-24T21:58:44.237 に答える
0

今あります:

library(devtools)
install_github('kimisc', 'krlmlr')
library(kimisc)
hms.to.seconds('25:15:00')

これは、dickoa のコードとは少し異なるアプローチを使用しています。引数はgsub、適切な正規表現を使用してフィルター処理され、実際の変換はまったく関与strptimeしません。コードを参照してください。

于 2013-05-27T08:07:48.373 に答える