source("http://bioconductor.org/biocLite.R") biocLite('biomaRt') library(biomaRt)
先加载出来。
随后,读数据。
data<-read.csv("C:/Users/Desktop/GSE96518_DESeq2_results.csv",header=T,sep=",")
加载数据库,这儿用到了小鼠的。
mart <- useMart("ensembl","mmusculus_gene_ensembl") 人类选择hsapiens_gene_ensembl
读数据:
gene<-read.csv("C:/Users/dell/Desktop/GSE96518_DESeq2_results.csv",header=T,sep=",")[,1] #第一列为ID,所以取第一列
转化成基因的名称:
gene_name<-getBM(attributes=c("ensembl_gene_id","external_gene_name"),filters = "ensembl_gene_id",values = gene, mart = mart) #如果是转录本,要改一下,成 ensembl_transcript_id
究竟biomaRt支持哪些ID类型的输入,可以通过以下命令查看:
listFilters(mart) listAttributes(mart)
filters指定输入ID的类型,attributes为输出ID的类型。
gene_data<-merge(data,gene_name,by="ensembl_gene_id")#ensembl_transcript_id这一列的列名均为ensembl_transcript_id write.csv( gene_data,"gene_data_name.csv",row.names=FALSE)#保存
这儿需要注意一下,by 后面的一定要是机器认识且在我们的文件里存在的,所以我把原文件的ID 改成了ensembl_gene_id。
然后就可以了。这儿机器就直接保存了文件,文件在哪儿?一个命令解决。还是会代码爽啊。
getwd()
其实也可以设定好路径,这样就保存到具体的文件里了。
setwd()
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/202122.html原文链接:https://javaforall.net
