- Notifications
You must be signed in to change notification settings - Fork1
PyOMADB is a python client to the OMA browser, using the REST API.
License
LGPL-3.0, GPL-3.0 licenses found
Licenses found
DessimozLab/pyomadb
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
PyOMADB is a python client to the OMA browser, using the REST API. As such, it requires a stable internet connection to operate. We also provide asimilar wrapper for R (https://github.com/DessimozLab/omadb).
Documentation is availablehere. A notebook containing examples of how to use the package is availablehere.
New (version 2.1.0) - in order to facilitate the functional and evolutionary aspects of coronaviruses, the newCorona OMA Browser has been launched. Please see theCorona-OMA Example for more information.
If you use our package in your work, please consider citing:
Kaleb K, Warwick Vesztrocy A, Altenhoff A and Dessimoz C. Expanding the Orthologous Matrix (OMA) programmatic interfaces: REST API and the OmaDB packages for R and Python. F1000Research 2019, 8:42(https://doi.org/10.12688/f1000research.17548.1)
The package requires Python 3 (>=3.6). The easiest way to install is usingpip, to install thepackage from PyPI.
pip install omadbDocumentation is availablehere.
As an example, if a user has the ID of their gene of interest, they can find the corresponding OMA entry as follows:
from omadb import Clientc = Client()prot_id = 'P53_RAT'r = c.proteins[prot_id] # Can also be called as c.proteins.info(prot_id)This is then a Python dictionary containing information about this entry. Some information is lazily loaded, for example:
orth = r.orthologs # Will lazily load in the background.Alternatively, if the user has the sequence but no ID, the closest entry in OMA can be identified as so:
seq = 'MKLVFLVLLFLGALGLCLAGRRRSVQWCAVSQPEATKCFQWQRNMRKVRGPPVSCIKRDSPIQCIQAIAENRADAVTLDGGFIYEAGLAPYKLRPVAAEVYGTERQPRTHYYAVAVVKKGGSFQLNELQGLKSCHTGLRRTAGWNVPIGTLRPFLNWTGPPEPIEAAVARFFSASCVPGADKGQFPNLCRLCAGTGENKCAFSSQEPYFSYSGAFKCLRDGAGDVAFIRESTVFEDLSDEAERDEYELLCPDNTRKPVDKFKDCHLARVPSHAVVARSVNGKEDAIWNLLRQAQEKFGKDKSPKFQLFGSPSGQKDLLFKDSAIGFSRVPPRIDSGLYLGSGYFTAIQNLRKSEEEVAARRARVVWCAVGEQELRKCNQWSGLSEGSVTCSSASTTEDCIALVLKGEADAMSLDGGYVYTAGKCGLVPVLAENYKSQQSSDPDPNCVDRPVEGYLAVAVVRRSDTSLTWNSVKGKKSCHTAVDRTAGWNIPMGLLFNQTGSCKFDEYFSQSCAPGSDPRSNLCALCIGDEQGENKCVPNSNERYYGYTGAFRCLAENAGDVAFVKDVTVLQNTDGNNNEAWAKDLKLADFALLCLDGKRKPVTEARSCHLAMAPNHAVVSRMDKVERLKQVLLHQQAKFGRNGSDCPDKFCLFQSETKNLLFNDNTECLARLHGKTTYEKYLGPQYVAGITNLKKCSTSPLLEACEFLRK'r = c.proteins.search(seq)For further examples that correspond to theR versions given in the paper, see theJupyter notebook, which is also available onmybinder.
In order to facilitate the functional and evolutionary aspects of coronaviruses, the newCorona OMA Browser has been launched.
The endpoint for the Corona OMA Browser iscorona.omabrowser.org/api and can be used in PyOMADB by importingCoronaClient instead ofClient.
from omadb import CoronaClientc = CoronaClient() # Connects to Corona OMA endpointprot_id = 'R1AB_SARS2' # Severe acute respiratory syndrome coronavirus 2r = c.proteins[prot_id] # Can also be called as c.proteins.info(prot_id)This is then a Python dictionary containing information about this entry. Some information is lazily loaded, for example:
orth = r.orthologs # Will lazily load in the background.PyOMADB is free software: you can redistribute it and/or modifyit under the terms of the GNU Lesser General Public License as published bythe Free Software Foundation, either version 3 of the License, or(at your option) any later version.
PyOMADB is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU Lesser General Public License for more details.You should have received a copy of the GNU Lesser General Public Licensealong with PyOMADB. If not, seehttp://www.gnu.org/licenses/.
About
PyOMADB is a python client to the OMA browser, using the REST API.
Resources
License
LGPL-3.0, GPL-3.0 licenses found
Licenses found
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors3
Uh oh!
There was an error while loading.Please reload this page.