[R]下载的RNASeq矩阵基因表达量的处理

2023-10-19  本文已影响0人  expgene

在UCSC xena 下载TCGA的RNASeq的数据,注意看页面的unit写的单位,一般是log2(count+1)之类的。如果要转换成count值,那么需要:2^矩阵-1,就转换成真实count的值

例子:

UCSC下载KIRC转录组数据:

https://xenabrowser.net/datapages/?dataset=TCGA.KIRC.sampleMap%2FHiSeqV2&host=https%3A%2F%2Ftcga.xenahubs.net&removeHub=https%3A%2F%2Fxena.treehouse.gi.ucsc.edu%3A443

还要注意矩阵的行名,也就是基因名有没有重复。

genes <- rownames(GeneMat)

GeneMat1 <- GeneMat[which(!duplicated(genes)),]

即可去除重复的基因的行。

ENSG基因名字问题:

一个ENSG编码对应一个基因,注意有些编号带有小数点,应该是版本。例如:ENSG00000223972.5,有时要注意版本号问题,不过我们在注释时,可以考虑去除小数点,只保留前面的编号。

ensg <- sapply(strsplit(Table$id,"[.]"),"[[",1)

Table$id为R的向量,strsplit(Table$id,"[.]")得到一个list,每个元素第一个为ENSG编号(小数点前),ensg为去除了ENSG编号小数点的向量

稀疏矩阵输出表格问题:

将稀疏矩阵选择部分基因作为基因表达矩阵输出表格:write.table(ChoGeneExpMat,file="xxx.geneexp.xls",sep="\t",quote=FALSE)

出现报错:

Error in as.data.frame.default(x[[i]], optional = TRUE) :

  cannot coerce class ‘structure("dgeMatrix", package = "Matrix")’ to a data.frame

解决方法:write.table(as.matrix(ChoGeneExpMat),file="xxx.geneexp.xls",sep="\t",quote=FALSE)

上一篇 下一篇

猜你喜欢

热点阅读