R语言中怎么把第一列的数据作为行名?

Python07

R语言中怎么把第一列的数据作为行名?,第1张

rt<-read.table(file="c:\\data.txt")rownames(rt)<-rt[,1];

数据框的第一列作为行名rt<-rt[,-1];

将数据框的第一列删除,只留下剩余的列作为数据head(rt);

扩展资料

R语言为数据框添加列名或行名

1、添加列名

wts=c(1,1,1)

names(wts)=c("setosa","versicolor","virginica")

2、为矩阵添加列名和行名

wts=matrix(0,3,4)row=c("row1","row2","row3")

column=c("setosa","versicolor","virginica")

dimnames(wts)=list(row,column)

setwd("E:/GSE25066")#环境设置

library(limma)#加载差异分析包limma

#将分组文件加载到环境中,分组信息第一列为样本名,第二列为分组信息如“high”“low”

targets<-read.csv("group.csv")

#将表达矩阵加载到环境中,行为基因,列为样本,这里应该注意去除重复项。

eset<-read.csv("expreset-basal1.csv",row.names = "symbol")

targets$Target=gsub("_",".",targets$Target)##若数据中存在特殊符号,将"_"替换成“.”,也可以不替换

##该数据集中实际存在不符合R的命名原则,所以在没个分类前加一个“F”,具体自己定

targets$Target=c(paste0("F",c(targets$Target),collapse = NULL,sep=""))

colnames(targets)=c("FileName","Target")#更改列名,为了和limma包中的一致

lev<-unique(targets$Target)##使用unique()函数进行去重

f <- factor(targets$Target, levels=lev)

design <- model.matrix(~0+f)

colnames(design) <- lev

cont.wt <- makeContrasts("high-low",

                      +  levels=design)

fit <- lmFit(eset, design)#前面矩阵的row.name=“symbol”

fit2 <- contrasts.fit(fit, cont.wt)

fit2 <- eBayes(fit2)

tT=topTable(fit2, adjust="BH",sort.by="logFC",n=Inf)

tT = subset(tT, select=c("adj.P.Val","P.Value","logFC"))

colnames(tT)=c("FDR","P.Value","logFC")

write.csv(tT,"DEGbasal.csv")

#最后的tT就是得到的差异基因,其中包含基因,P.Value和logFC