我有一个字符列为“日期”,但没有用正确的mmddyyyy格式编写。
Example:
ID Date
125 9282007
350 10152007
225 1112007
240 1052007
如何使用R将“日期”列格式化为正确的mmddyyyy格式?
提前致谢。
答案 0 :(得分:1)
您可以使用dplyr
+ lubridate
:
library(dplyr)
library(lubridate)
df %>%
mutate(Date = gsub("(\\d{2})(\\d{4}$)", "-\\1-\\2", Date),
Date = format(mdy(Date), "%m-%d-%Y"))
<强>结果:强>
ID Date
1 125 09-28-2007
2 350 10-15-2007
3 225 01-11-2007
数据:强>
df = read.table(text = "ID Date
125 9282007
350 10152007
225 1112007", header = TRUE)
注意:强>
原始Date
的格式不明确,因为1112007可能意味着11-1-2007或1-11-2007。在我的解决方案中,我假设天数总是两位数,因此11-1-2007将被编码为11-01-2007。但是,您应该在转换之前调查是否是这种情况。