【发布时间】:2020-04-29 10:58:08
【问题描述】:
我得到了一个大数据集,其中一列是因子格式的日期。 我想将此更改为日期格式,并使用 as.Date
ID <- c(1,2,3,4,5)
dates <- as.factor(c('20OCT2008:00:00:00', '18NOV2008:00:00:00', '05JUN2009:00:00:00', '03MAY2009:00:00:00', '10APR2009:00:00:00'))
df <- data.frame(ID, dates)
df$dates = as.Date(df$dates, format='%d%b%Y:%H:%M:%S')
df
ID dates
1 1 <NA>
2 2 2008-11-18
3 3 2009-06-05
4 4 <NA>
5 5 2009-04-10
但是,只有一些日期发生了变化,而其余日期则为 NA。 关于如何成功转换所有日期或为什么会出现我的 NA 的任何想法?
谢谢!
【问题讨论】:
-
它对我来说很好用。我认为这可能是语言环境问题。你的语言环境是什么?
-
丹麦。所以现在我已经将语言环境更改为全英文,并且代码正在运行。谢谢!
-
如果您不想更改语言环境,因为这会影响整个 sessoin,那么 R 确实提供了一个始终为英文的
month.abb。dates2 <- gsub("([A-Z]+)", ":\\1:", dates); d <- read.table(text = dates2, as.is = TRUE, sep = ":");; with(d, ISOdatetime(V3, match(V2, toupper(month.abb)), V1, V4, V5, V6))
标签: r date-formatting