read.csv使用日期值追加/修改列标题

时间:2012-04-10 15:07:52

标签: r csv dataframe

我正在尝试将一个csv文件读入R中,该文件在某些​​列标题中具有日期值。

例如,数据文件如下所示:

ID  Type   1/1/2001  2/1/2001  3/1/2001  4/1/2011
A   Supply       25        35        45        55  
B   Demand       26        35        41        22
C   Supply       25        35        44        85  
D   Supply       24        39        45        75  
D   Demand       26        35        41        22

...我的read.csv逻辑看起来像这样

dat10 <- read.csv("c:\data.csv",header=TRUE, sep=",",as.is=TRUE)

read.csv工作正常,但它修改了包含日期的列的名称,如下所示:

x1.1.2001  x2.1.2001  x3.1.2001  x4.1.2001

有没有办法防止这种情况发生,或者之后可以通过简单的方法进行纠正?

2 个答案:

答案 0 :(得分:6)

设置check.names=FALSE。但要注意1/1/2001等语法在语法上是无效的,因此它们可能会引起一些麻烦。

答案 1 :(得分:3)

您始终可以使用colnames功能更改列名称。例如,

colnames(dat10) = gsub("\\.", "/", colnames(dat10))

但是,在列名中添加斜杠并不是一个特别好的主意。您可以在打印表格或创建图表之前随时更改它们。