导入excel与重复的列以数字结尾(r xlsx)
我有一个包含4列的xlsx文件:
Thingie1 Thingie1 Thingie2 Thingie2
(我知道这很愚蠢……这是因为我合并了来自2个不同数据库的数据, 1
和2
表示调查1和调查2之间的差异,并select将其转储到xlsx文件中。
当我使用xlsx包将其导入到R中时,它将列标题更改为:
Thingie1 Thingie3 Thingie2 Thingie4
显然,我现实世界中的例子要复杂得多,因此很难确定是什么东西。 我想有这样的东西:
Thingie1 Thingie11 Thingie2 Thingie21
现在,我可以通过在Excel中打开文件并在那里更改列来解决这个问题…所以我可以解决我眼前的问题,但我讨厌打破我的工作stream程…有没有办法以更好的方式导入这些数据成R本身?
我认为你应该单独阅读header=FALSE
文件的第一行(包含列名),使用header=FALSE
来正确命名列。 然后使用make.unique
函数。 稍后用header=TRUE
读取整个文件,并使用colnames
函数设置列名。
x <- c("Thingie1", "Thingie1", "Thingie2", "Thingie2") x #[1] "Thingie1" "Thingie1" "Thingie2" "Thingie2" make.unique(x) #[1] "Thingie1" "Thingie1.1" "Thingie2" "Thingie2.1"