GeneSymbol、GeneID、ensembleID转换
2016-12-19 18:40阅读:
方法一:r package biomaRt
1、选择一个Mart
ensemble<-useMart('ensembl')
2、查看当前Mart下有什么Database
listDatasets(ensemble)

3、选择一个Database
dataset<-useDataset('hsapiens_gene_ensembl',mart =
ensemble)
此时dataset是S4类型的,不能用常规方法进行调用!!!
4、建立biomaRt查询
--1先查看过滤的选项,相当于MySQL中的列名,这里要选取的是ensemble_gene_id当然你可以选取多个用c()把他们合成一个向量
filter<-listFilters(ensembl)
head(filter)

--2查看属性值,也是等同于MySQL中的列名,这里要选取的是hgnc_symbol为了对照来看,把ensemble_gene_id也选上
attributes<-listAttributes(ensembl)
head(attributes)

--3要对应成genesymbol的ENSGid的格式整理成字符串向量就好

--4进行查询,如果是第一次使用,建议不要把整个数据放进去,可以用几个数据看看你选取的mart、dataset、filter和attribute是不是合适。最后可能不能完整对应上也是正常的。
getBM(attributes =
c('ensembl_gene_id','hgnc_symbol'),filters='ensembl_gene_id',values
= ensg[1:10],mart = ensembl)

方法总结:
缺点:此方法依赖R包,要求有一定的R语言基础。
优点:此方法可以转换多种数据格式,还能对染色体位置上的基因进行查询等其他操作,功能强大,实用性很强。个人认为运算速度还能接受。
待更新。。。