Как я могу преобразовать имена генов (hgnc_symbol) в идентификаторы ансамбля в R? "Bioconductor-biomaRt"
У меня есть список генов в качестве имен строк моего eset, и я хочу преобразовать их в идентификатор гена Ensembl. Я использовал getGene в пакете bioMart, но для некоторых генов он назывался дважды! Вот небольшой пример для моего кода:
library (biomaRt)
rownames(eset)
[1] "EPC1" "MYO3A" "PARD3" "ATRNL1" "GDF2" "IL10RA" "GAD2" "CCDC6"
getGene(rownames(eset),type='hgnc_symbol',mart)[c(1,9)]
# [1] is the hgnc_symbol to recheck the matched data
# [9] is the ensemble_gene_id
hgnc_symbol ensembl_gene_id
1 ATRNL1 ENSG00000107518
2 CCDC6 ENSG00000108091
3 EPC1 ENSG00000120616
4 GAD2 ENSG00000136750
5 GDF2 ENSG00000263761
6 IL10RA ENSG00000110324
7 IL10RA LRG_151
8 MYO3A ENSG00000095777
9 PARD3 ENSG00000148498
Как вы можете видеть, в столбце hgnc_s ymbol есть две записи для "IL10RA"; но у меня был только один "IL10RA" в именах строк (eset); это вызывает проблему в конце, когда я хотел добавить Ensembl_ID к fData(eset)! Как я могу решить эту проблему? чтобы получить такой результат:
hgnc_symbol ensembl_gene_id
1 ATRNL1 ENSG00000107518
2 CCDC6 ENSG00000108091
3 EPC1 ENSG00000120616
4 GAD2 ENSG00000136750
5 GDF2 ENSG00000263761
6 IL10RA ENSG00000110324
7 MYO3A ENSG00000095777
8 PARD3 ENSG00000148498
Заранее спасибо,
1 ответ
Я нашел решение! Дублируется в Eset. Что-то вроде этого:
g_All <- getGene(id = rownames(eset)),type='hgnc_symbol',mart)
g_All <- g_All[!duplicated(g_All[,1]),]