I'm working with data downloaded from STRING database (string-db.org) for protein-protein interactions. My idea is to compare the topology of connections of the same protein on different organisms.

However, I noticed that the same protein can receive different ID on each organism.

So I would like to know if there is any way to convert all ID's into just one pattern.



2 Answers 2


Proteins evolve and have different sequences between species, so you would have to define what you mean with "same protein". One option would be to use an orthology database like eggNOG. (eggNOG has the same protein identifiers as STRING.) Then you could figure out 1:1 correspondences between proteins.

You probably also want to read up on Roded Sharan's work, e.g. Global alignment of protein-protein interaction networks.

  • $\begingroup$ Hello @Michael this was exactly what I was searching for. Thanks for your help and for the reading suggestion. $\endgroup$ Apr 1, 2015 at 19:29

If I understand it correctly you have downloaded for example 1000 protein sequences with 1000 IDs, but there are duplicates in sequences so in reality it is like having 600 unique sequences with 1000 ID's? If so it should be fairly easy to write a script which would create a set of unique sequences with all corresponding IDs so you could choose which one to use.

In python it could be done using the sequence as dictionary key with the ID as a value. While looping over each sequence check if the sequence is already in dictionary. If yes, append the new ID as a value. Finally you would get

seqs = {
'DFABIODFAFDIOAF....':['ID001', 'ID007'],

from which it should be easy to choose

TBH not sure about efficiency of this but this depends on the size of dataset? How large is it? Just give me a sample dataset and I can write it.

  • $\begingroup$ Hello @Pocin thanks for your help and for your answer, but my problem was how to convert the protein ID used on STRING to a different database ID (e. g. Uniprot). Using solution provided by Michael I 'll be able to make this correspondence. $\endgroup$ Apr 1, 2015 at 19:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .