I'm getting quite crazy here, and maybe this is a easy to solve problem:
I have RNA-seq data with Ensembl rownames and want to map them to symbol and entrez, because I need them for other packages in the one or other format.
But there seems to be a disconnection of Ensembl and Entrez in both biomart and org.hs.eg.db for some genes. For example, if I want to map the IGHM gene, which has the Ensembl ID ENSG00000211899 and the Enrez 3507, I can only map both to symbol, but not to each other:
annot <- getBM(mart=mart, attributes=c("ensembl_gene_id", "external_gene_name", "entrezgene"), filter="ensembl_gene_id", values="ENSG00000211899", uniqueRows=TRUE)
this returns the gene name, but no entrez.
select(org.Hs.eg.db, keys='3507', columns=c('SYMBOL','ENSEMBL'))
this returns again the Symbol, but this time no Ensembl id.
Of course, I can go out and try to map those symbols from biomart to the symbols from org.db, but this is not as it should be, right?
Both, biomart and org.db are up to date (2.38 and 3.7)