楼主: 水舞者
11460 3

[问答] 如何解决read.delim无法读入有相同行名的table? [推广有奖]

  • 0关注
  • 2粉丝

本科生

48%

还不是VIP/贵宾

-

威望
0
论坛币
42 个
通用积分
0
学术水平
0 点
热心指数
1 点
信用等级
2 点
经验
1489 点
帖子
67
精华
0
在线时间
62 小时
注册时间
2015-6-7
最后登录
2021-7-22

楼主
水舞者 发表于 2015-10-12 11:24:25 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
read.delim()读入数据的时候,如果table里面有两行的行名是一样的,就会这样报错:

Error in read.table(file = file, header = header, sep = sep, quote = quote,  :

  duplicate 'row.names' are not allowed

这种问题如何解决呢?


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Table READ ABLE del Lim 如何

沙发
jinkelazzz 发表于 2015-10-12 14:48:02
把行名也当做变量读进去

藤椅
水舞者 发表于 2015-10-12 15:19:26
jinkelazzz 发表于 2015-10-12 14:48
把行名也当做变量读进去
我这样读进来以后,把行名和列名分别提出来,然后再加回去,还是会报这样的错:
Error in `row.names<-.data.frame`(`*tmp*`, value = value) :
  duplicate 'row.names' are not allowed

板凳
水舞者 发表于 2015-10-12 16:33:18
嗯,经过谷歌,我再来自问自答一下吧:我现在的解决方案是,先让header=FALSE,读进去以后提出行名和列名,将data.frame转换成matrix,但是问题又来了,这个转换后的matrix是一个character,直接用as.numeric行不通,所以只能用apply(esetm,c(1,2),as.numeric),然后再把行名和列名加上就可以啦~
说白了就是,dataframe的行名是不能重复的,但是matrix是可以的。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-3 14:29