Common gene naming conventions and how to convert between them I have two questions, one is a direct question about some RNA expression data.  The other is more broad, but motivated by the first.  I have downloaded an expression set for a class project and I am unfamiliar with the naming convention, I recognize entrez ID but not this one.
    &gt; rownames(Rao)[1:10]
 [1] &quot;0610007P14Rik&quot; &quot;0610009B22Rik&quot; &quot;0610009D07Rik&quot; &quot;0610009L18Rik&quot; &quot;0610009O20Rik&quot; &quot;0610010B08Rik&quot; &quot;0610010F05Rik&quot;
 [8] &quot;0610010K14Rik&quot; &quot;0610011F06Rik&quot; &quot;0610012G03Rik&quot;

So my first question is what is this gene naming convention.  The second is what are many other conventions I should recognize and what tools can I use for converting between them?  Lastly what kind of errors may crop up when I do that and how can I check for mismappings or non-unique mappings?
I am primarily interested in R but methods in python would also be appreciated!  Its always good to have more tools.
Biologists are familiar with SYMBOL (for good reasons).
Bioinformaticians like ENTREZID ENSEMBL REFSEQ GENBANK etc, I'm definitely missing some here.
You don't need to know these by heart, just know that databases don't map 1:1.
I've worked with mouse RNAseq data before, so I agree with user::RamRS comment that it looks like a mouse gene. What type of identifier is it? I had no idea.
You can find this out at NCBI::GENE, by querying for, let's say Rao[1] &quot;0610007P14Rik&quot;. (https://www.ncbi.nlm.nih.gov/gene/?term=0610007P14Rik)
NCBI::GENE tells you the SYMBOL::Erg28, ENTREZID::8520, and in the far right a column called ALIAS::0610007P14Rik.
Now that you know your identifier type (ALIAS), you can map between databases in R.
There are many packages to do this. Someone mentioned biomart in the comment.
I use AnnotationDbi
library(AnnotationDbi)
library(org.Mm.eg.db)

Rao &lt;- c(&quot;0610007P14Rik&quot;, &quot;0610009B22Rik&quot;, &quot;0610009D07Rik&quot;, &quot;0610009L18Rik&quot;, &quot;0610009O20Rik&quot;, &quot;0610010B08Rik&quot;, &quot;0610010F05Rik&quot;, &quot;0610010K14Rik&quot;, &quot;0610011F06Rik&quot;, &quot;0610012G03Rik&quot;)

#use the function select to retrieve the column type &quot;SYMBOL&quot; with keys &quot;RAO&quot;.
#&quot;RAO&quot; is a keytype of &quot;ALIAS&quot;. And I want to search in the mice database &quot;org.Mm.eg.db&quot;

AnnotationDbi::select(x = org.Mm.eg.db,
+                       keys = Rao,
+                       keytype = &quot;ALIAS&quot;,
+                       columns = &quot;SYMBOL&quot;)
'select()' returned 1:1 mapping between keys and columns
           ALIAS        SYMBOL
1  0610007P14Rik         Erg28
2  0610009B22Rik 0610009B22Rik
3  0610009D07Rik         Sf3b6
4  0610009L18Rik 0610009L18Rik
5  0610009O20Rik         Dele1
6  0610010B08Rik        Gm2026
7  0610010F05Rik 0610010F05Rik
8  0610010K14Rik 0610010K14Rik
9  0610011F06Rik       Mettl26
10 0610012G03Rik 0610012G03Rik


In the cases when they don't map 1:1, the function will throw a warning, and you can access it by warnings(). It is rarely important though.
Hope this answers the question.