Получить hgnc_symbol / gene_name из ensembl_gene_id - PullRequest
1 голос
/ 15 марта 2019

У меня есть этот код (от здесь ):

library('biomaRt')
mart <- useDataset("hsapiens_gene_ensembl", useMart("ensembl"))
genes <- rownames(res)
G_list <- getBM(filters= "ensembl_gene_id", attributes=c("ensembl_gene_id","entrezgene", "description","hgnc_symbol"),values=genes,mart= mart)

Но когда я проверяю G_list : , он пуст.

Я понимаю, почему:

Вот несколько примеров моего ensembl_gene_id в genes :

"ENSG00000260727.1", "ENSG00000277521.1", "ENSG00000116514.16"

Если я передам этот идентификатор getBM () , он ничего не вернет.

Однако, если я удалю число после точки и точки следующим образом:

"ENSG00000260727", "ENSG00000277521", "ENSG00000116514"

Я получаю ожидаемые результаты.

Есть ли способ дать gene_ID с точками и получить ожидаемые результаты?

1 Ответ

2 голосов
/ 15 марта 2019

Не ответ, но слишком долго для комментария; рад удалить, если сочтет это неуместным.

Короче говоря, да, вам нужно удалить часть "точка цифры" из имени гена Ensembl. Цифры обозначают разные номера версий, связанные со стабильными идентификаторами Ensembl.

С Ансамбль документации по стабильным идентификаторам :

При переназначении стабильных идентификаторов между реаннотациями мы можем по желанию увеличить номер версии, назначенный стабильным идентификатором. Мы делаем это, чтобы указать основные изменения в организации.

Для генов (т. Е. Идентификаторов ансамблей вида ENSG*) номер версии увеличивается при изменении набора транскриптов, связанных с геном.

Этот пост фактически дублирует пост на Biostars: Вопрос: Отображение идентификаторов генов Ensembl с точечным суффиксом ; вам следует взглянуть на некоторые из обсуждаемых там решений R.


Постскриптум

Вместо использования Biomart часто лучше / быстрее использовать некоторые из существующих пакетов аннотаций от Bioconductor . Например, взгляните на

...