1

我通常使用 biomaRt 将基因 ID 转换为符号。但是,这一次我(对于狗)拥有的集成 ID 与 biomart 数据集“clfamiliaris_gene_ensembl”的集成 ID 不匹配。

我还尝试使用 ensembl 门户网站,那里的狗数据集称为 ROS_Cfam_1.0。看起来我的基因与他们数据集中的基因不匹配。我的基因是这样的:

“ENSCAFG00000045440” “ENSCAFG00000000001” “ENSCAFG00000000002” “ENSCAFG00000041462” “ENSCAFG00000000005”

这是我的 biomart 代码:

ensembl <- useMart("ensembl")
ensembl <- useDataset("clfamiliaris_gene_ensembl",mart=ensembl)
gene_id <- getBM(attributes = c('ensembl_gene_id', 'external_gene_name'),
                 values = rownames(mydata),
                 filters = c('ensembl_gene_id'), mart = ensembl)
gene_id
[1] ensembl_gene_id    external_gene_name
<0 rows> (or 0-length row.names)

它找不到我的价值观。我应该为狗使用不同的数据集吗?

4

2 回答 2

3

这些 ID 来自拳师犬基因组组装:https ://www.ensembl.org/Canis_lupus_familiaris/Info/Strains?db=core

但是,BioMart 不适用于犬种(以及其他物种和品系):https ://www.ensembl.info/2021/01/20/important-changes-of-data-availability-in-ensembl-gene -树木和生物市场/

但是,您可以使用 POST lookup/id REST API 端点来检索来自任何物种的基因 ID 列表的基因符号:http ://rest.ensembl.org/documentation/info/lookup_post

于 2021-12-23T09:15:57.147 回答
0

我的代码也有同样的问题。正如在之前的更新中提到的 biomart ensembl ids 已更改为 dog。

对我来说临时修复如下:我检查了您可以访问的各种版本

library('biomaRt')

listEnsemblArchives()

从 may2021 中选择仍然包含所需 ID 的最新版本

(例如 ENPP1 基因的“ENSCAFG00000000001”而不是“ENSCAFG00845000008”)

ensembl2use <- useMart('ensembl', dataset = 'clfamiliaris_gene_ensembl', host = 'https://may2021.archive.ensembl.org')

SPECIE_ANNOTATION <- getBM(attributes = c('ensembl_gene_id'), mart = ensembl2use)
于 2022-02-05T10:03:40.660 回答