2017-04-03 76 views
2

这是一个简单的问题,但我找不到答案。从R导出data.frame后更改日期格式为.csv

我有这个data.frame中的R

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

我想将它导出为WHERE月份将缩写为(%b)和今年将是一年的世纪(%Y).csv文件,如下

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

我无法找到格式月(缩写) - 年。任何建议如何解决它?

回答

2

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

mmm-yy 

的格式

mmm-yyyy 

这种格式不在列表中,改变它在“类型”和格式选项列表之间的框中

+0

Schilfini 非常感谢您的回答。它节省了我的时间,所以我不需要从.csv读取数据。我不能打开它然后改变格式。 – aelwan

3

这不是R问题。 Excel“有用”地将自己的格式应用于您的数据。为了防止这种情况,您需要对CSV导入进行更多的控制。 These instructions可能会帮助你。

+0

非常感谢。这解决了我的问题。你是对的,它不是一个R问题。我想过要求超级用户,但我认为SO上的用户可能以前遇到过类似的问题。 – aelwan

+1

是的,你会发现许多R用户对Excel有一个意见:) – neilfws

+0

你是对的。我不应该问R用户的Excel问题:) – aelwan