将data.frame从R导出为.csv后更改日期格式

时间:2017-04-03 01:43:43

标签: r excel date csv

这是一个简单的问题,但我无法找到答案。

我在R

中有这个data.frame
df <- data.frame(date = as.Date(c("2001-01-05", "2000-05-13", "2000-07-22", "2000-07-22", "1990-11-03")))

我想将其导出为.csv文件,其中Month将缩写(%b),年份将为year with century(%Y),如下所示

df1 <- df %>% mutate(date = format(as.Date(date, "%Y-%m-%d"), "%b-%Y"))
write.csv(df1, "df1.csv")
> df1
      date
1 Jan-2001
2 May-2000
3 Jul-2000
4 Jul-2000
5 Nov-1990

打开df1.csv文件后,我发现日期的格式不同,如下所示

enter image description here

我找不到格式月份(缩写)-YEAR。有任何建议如何修复它?

2 个答案:

答案 0 :(得分:3)

这不是R问题。 Excel已“帮助”将自己的格式应用于您的数据。为防止这种情况,您需要对CSV导入施加更多控制。 These instructions可以帮助您。

答案 1 :(得分:2)

您必须更改Excel中所有日期单元格的格式。 转到格式化单元格,然后从

更改格式
mmm-yy

mmm-yyyy

此格式不在列表中,在“类型”和格式选项列表之间的框中更改