Как я могу преобразовать имена генов (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]),]
Другие вопросы по тегам