Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

simple wrapper around the Unimod amino acid modificatins database

Project Description
David's useful Unimod Wrapper

This is a simple python module to wrap the Unimod XML file in a readily
accessible form for python programemrs.
A copy of the unimod.xml file is included.

No dependencies that are not in a standard >2.4 python distribution.


1. simple usage. Use the built in file.

>>> import Unimod.unimod
>>> db=Unimod.unimod.database

2. Use your own file
>>> import Unimod.Database
>>> db=Unimod.Database.Database(file="my unimod file")

3. Getting element info
Use the get_element(label) method and a dictionary is returned.
>>> db.get_element('H')
{'avge_mass': '1.00794', 'title': 'H', 'full_name': 'Hydrogen', 'mono_mass': '1.007825035'}

All labels are supported, and additionally the common isotopes as labels as well

>>> db.get_element('O')
{'avge_mass': '15.9994', 'title': 'O', 'full_name': 'Oxygen', 'mono_mass': '15.99491463'}
>>> db.get_element('18O')
{'avge_mass': '17.9991603', 'title': '18O', 'full_name': 'Oxygen18', 'mono_mass': '17.9991603'}
>>> db.get_element('16O')
{'avge_mass': '15.9994', 'title': 'O', 'full_name': 'Oxygen', 'mono_mass': '15.99491463'}

4. getting modification info

Use the get_label(modification) method
>>> db.get_label('Phospho')
{'delta_mono_mass': '79.966331',
'group_of_poster': 'admin',
'delta_avge_mass': '79.9799',
'username_of_poster': 'unimod',
'title': 'Phospho',
'delta_composition': 'H O(3) P',
'sites': {
'C': {'position': 'Anywhere', 'hidden': 'true', 'site': 'C', 'classification': 'Post-translational', 'spec_group': '5'},
'D': {'position': 'Anywhere', 'hidden': 'true', 'site': 'D', 'classification': 'Post-translational', 'spec_group': '3'},
'H': {'position': 'Anywhere', 'hidden': 'true', 'site': 'H', 'classification': 'Post-translational', 'spec_group': '4'},
'K': {'position': 'Anywhere', 'hidden': 'true', 'site': 'K', 'classification': 'Other', 'spec_group': '7'},
'S': {'position': 'Anywhere', 'hidden': 'false', 'site': 'S', 'classification': 'Post-translational', 'spec_group': '1'},
'R': {'position': 'Anywhere', 'hidden': 'true', 'site': 'R', 'classification': 'Post-translational', 'spec_group': '6'},
'T': {'position': 'Anywhere', 'hidden': 'false', 'site': 'T', 'classification': 'Post-translational', 'spec_group': '1'},
'Y': {'position': 'Anywhere', 'hidden': 'false', 'site': 'Y', 'classification': 'Post-translational', 'spec_group': '2'}
'spec_group': {
'1': ['T', 'S'],
'3': ['D'],
'2': ['Y'],
'5': ['C'],
'4': ['H'],
'7': ['K'],
'6': ['R']
'date_time_posted': '2002-08-19 19:17:11',
'date_time_modified': '2011-11-25 10:55:54',
'full_name': 'Phosphorylation',
'record_id': '21',
'approved': 'true'

In this dictionary are two fields, 'sites' which contains info for each amino acid, and 'spec_group' which contains the specificity grouping for the modification.

5. Searching for labels
Pass a regular expression in text form to the list_labels method.

>>> db.list_labels('.*Phospho.*')
['Phosphoguanosine', 'Phosphopantetheine', 'PhosphoHex', 'Phosphopropargyl', 'PhosphoribosyldephosphoCoA', 'PhosphoHexNAc', 'Phosphoadenosine', 'PhosphoUridine', 'Phosphogluconoylation', 'Label:13C(9)+Phospho', 'Phospho']


Dr David Martin, University of Dundee, UK.


(c) David Martin 2012


Unimod data is redistributed under the terms of the licensing described on the
Unimod website - in short you can redistribute the data
included as long as you permit unrestricted subsequent redistribution.

The software code is licensed under the Creative Commons Attribution License You may use, alter and publish work
based on the code as long as you acknowledge the use of the code with an
appropriate statement such as this in the copyright/attribution/help text: "Includes the python Unimod wrapper by Dr David Martin, University of Dundee".

Release History

Release History

This version
History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
Unimod-0.1.1.tar.gz (227.6 kB) Copy SHA256 Checksum SHA256 Source Dec 7, 2012

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting