2
我用lubridate
來做轉換。支持英文字符,但不支持中文字符。例如,在R中,有沒有辦法將中文時間字符從12小時制轉換爲24小時制?
> library(lubridate)
> mdy_hm("01/31/2017 08:01 PM")
[1] "2017-01-31 20:01:00 UTC"
> mdy_hm("01/31/2017 08:01 AM")
[1] "2017-01-31 08:01:00 UTC"
將「AM」和「PM」條件分開很明顯。但對於另一個例子,
> ymd_hm("2017年9月10日上午12:36")
[1] "2017-09-10 12:36:00 UTC"
它不能將「AM」條件轉換爲「PM」條件。
Thx @ycw,它適用於我。在這裏,我寫了一個函數。
Tconv <- function(x){
time = x
y <- ifelse(grepl("日 上午", time), paste(time, "AM", sep = " "),
ifelse(grepl("日 下午", time), paste(time, "PM", sep = " "),
time))
z <- lubridate::ymd_hm(y)
return(z)
}
> time <- data_frame(date = "2017年9月10日 上午12:36", "2017年9月10日 下午12:36")
> Tconv(time)
[1] "2017-09-10 00:36:00 UTC" "2017-09-10 12:36:00 UTC"
Thx,它適用於我。 – Jiaxiang
@Jiaxiang我很高興它的作品。請接受我的帖子作爲答案。 – www