在做跨物种分析时,需要对不同物种的基因进行同源转化,以便进行比较。R包biomaRt是常用的同源基因转化工具,本文主要介绍使用biomaRt同源基因转化的使用方法和注意事项。
一、使用方法
以人和小鼠为例
library(biomaRt)
library(dplyr)
library(stringr)
#查询可以链接到的数据库有哪些,返回结果发现有四个
listMarts()
> listMarts()
biomart version
1 ENSEMBL_MART_ENSEMBL Ensembl Genes 109
2 ENSEMBL_MART_MOUSE Mouse strains 109
3 ENSEMBL_MART_SNP Ensembl Variation 109
4 ENSEMBL_MART_FUNCGEN Ensembl Regulation 109
#可以从biomart中挑选一个数据库进行使用
ensembl = useMart("ENSEMBL_MART_ENSEMBL")
all_database = listDatasets(ensembl)
运行完上述两条代码后R studio 环境中会出现两个变量,其中all_database是一个dataframe,该数据框中列举了使用数据库中所有的数据集以及对应数据集的描述及版本。
![](https://img.haomeiwen.com/i28387726/cf615f30586daf4a.png)
可以使用Rstudio中对dataframe的检索功能检索出研究对象的数据集,下图以小鼠为例:
![](https://img.haomeiwen.com/i28387726/316692deb894f089.png)
#当然也可以通过searchDatasets对数据集进行查询
> searchDatasets(mart = ensembl, pattern = "Mouse")
dataset description version
105 mmurinus_gene_ensembl Mouse Lemur genes (Mmur_3.0) Mmur_3.0
106 mmusculus_gene_ensembl Mouse genes (GRCm39) GRCm39
获取数据
使用useMart函数以检索到的数据集作为参数加载研究对象的数据集
human = useMart(biomart = "ENSEMBL_MART_ENSEMBL", dataset = "hsapiens_gene_ensembl" ,host = "https://dec2021.archive.ensembl.org/")
mouse = useMart(biomart = "ENSEMBL_MART_ENSEMBL", dataset = "mmusculus_gene_ensembl",host = "https://dec2021.archive.ensembl.org/")
加载后的数据集结构
![](https://img.haomeiwen.com/i28387726/7bbe9a2a39f64443.png)
构建转化函数
#获取不同物种的同源基因,参考物种是attributes,则查询物种是attributesL。
human2mouse <- function(x){
genes_cyno = getLDS(attributes = c("external_gene_name"),
filters = "external_gene_name",
values = x , mart = human,
attributesL = c("external_gene_name"),
martL = mouse, uniqueRows=T
)
colnames(genes_cyno) = c("Human.Gene", "Mouse.Gene")
return(genes_cyno)
}
转化测试(示例数据:SCAR_Atlas_0518.rds)
## 转化测试
use_gene = rownames(data@assays$RNA@counts)
human2mouse(use_gene)
> human2mouse(use_gene)
Human.Gene Mouse.Gene
1 MT-ND4L mt-Nd4l
2 MT-CO2 mt-Co2
3 MT-CO1 mt-Co1
4 MT-ND2 mt-Nd2
5 MT-ND6 mt-Nd6
6 MT-ND3 mt-Nd3
7 MT-ATP6 mt-Atp6
8 MT-ND4 mt-Nd4
9 MT-ND5 mt-Nd5
10 MT-CO3 mt-Co3
11 MT-ATP8 mt-Atp8
12 MT-ND1 mt-Nd1
13 SYCP3 Gm20817
14 SYCP3 Gm28490
15 SYCP3 Gm21094
16 SYCP3 Gm20838
值得注意的是(示例数据:SCAN_Pan_0037.rds)
![](https://img.haomeiwen.com/i28387726/d734069d103f6386.png)
网友评论