在read.table读取文件时出现了行名重复的情况,会导致报错:
文件内容:
报错信息:

此时需要对重复的行名进行重命名处理,方法一:
先不读取行名,使用make.names函数给行命名:
d<-read.table("test.xls", header = T, check.names = F)
row.names(d)<-make.names(d[,1],TRUE)
查看:

此时只需要把文件多余列删除:
d<-d[,-1]
方法二,写循环重命名:
d<-read.table("test.xls", header = T, check.names = F)
> uniname <- unique(d[,1])
> rowname <- d[,1]
> for (i in 1:length(uniname)) {
+ count = -1
+ for (j in 1:length(rowname)) {
+ if (rowname[j] == uniname[i]) {
+ count = count + 1
+ if (count > 0) {
+ rowname[j] = paste0(uniname[i], ".", count)
+ }
+ }
+ }
+ }
> rownames(d) <- rowname

参考:
https://www.cnblogs.com/liujiaxin2018/p/16325320.html
https://www.jianshu.com/p/10733715536f
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!