R语言行名有重复不能读入的解决方法(笔记)

Python013

R语言行名有重复不能读入的解决方法(笔记),第1张

读入数据的时候遇到行名有重复而报错的情况,如下图

mydata<-read.table("data_RNA_Seq_v2_mRNA_median_ Zscores.txt", header = T, row.names=1, check.names = F)

报错:Error in read.table("data_RNA_Seq_v2_mRNA_median _Zscores.txt", header = T,  :   'row.names'里不能有重复的名字

此时可以使用base包中的make.names()函数

使用方法:

1.先不设置行名将数据读进去

mydata<-read.table("data_RNA_Seq_v2_mRNA_median_ Zscores.txt", header = T, check.names = F)

2.使用make.names函数将第一列作为行名

row.names(mydata<-make.names(mydata[,1],TRUE)

关于make.names函数的使用方法可以通过?make.names获得

3. 删除第一列

mydata<-mydata[,-1]

4.查看数据前五行前五列看是否行名修改完成

mydata[1:5,1:5]

建议使用排序解决这一问题:单击表格中任何一个有数据的单元格,也就是选中数据清单,然后打开“数据”菜单,选择“排序”,在弹出的对话框中,设置“主要关键字”为要查找相同内容的列标题(如“姓名”),确定,之后表格中的数据相同的记录就会排列在一起。

步骤如下:

主要介绍一下利用matrix函数和rep生成矩阵。

在R语言中可以使用matrix()函数来创建矩阵,其语法格式如下:

matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)。

rep函数是R语言中重复操作的函数。