https://github.com/aureme/padmet
Python library for hAndling metaData of METabolism.
Science Score: 59.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 6 DOI reference(s) in README -
✓Academic publication links
Links to: plos.org -
✓Committers with academic emails
2 of 10 committers (20.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.4%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
Python library for hAndling metaData of METabolism.
Basic Info
- Host: GitHub
- Owner: AuReMe
- License: gpl-3.0
- Language: Python
- Default Branch: master
- Homepage: https://padmet.readthedocs.io/en/latest/
- Size: 7.25 MB
Statistics
- Stars: 6
- Watchers: 3
- Forks: 2
- Open Issues: 3
- Releases: 4
Topics
Metadata Files
README.md
PADMet
PADMet is a python library to manage metabolic networks.
Table of contents
Description
The PADMet package allows conciliating genomics and metabolic network information used to produce a genome-scale constraint-based metabolic model within a database that traces all the reconstruction process steps. It allows representing the metabolic model in the form of a Wiki containing all the used/traced information. Other standard outputs are made available with the package.
The main concept underlying PADMet-Package is to provide solutions that ensure the consistency, the internal standardization and the reconciliation of the information used within any workflow that combines several tools involving metabolic networks reconstruction or analysis. The PADMet package is at the core of the AuReMe workflow, dedicated to the primary reconstruction of genome-scale metabolic networks from raw data. It allows the study of organisms for which few experimental data are available. Its main feature is to undergo the reconstruction of the metabolic network by combining several heterogeneous knowledge and data sources, including the information reported by several scaffold metabolic networks for cousin species.
If you use PADMet, please cite the following article:
Aite, M., Chevallier, M., Frioux, C., Trottier, C., Got, J., Cortés, M. P., Mendoza, S. N., Carrier, G., Dameron, O., Guillaudeux, N., Latorre, M., Loira, N., Markov, G. V., Maass, A., and Siegel, A. (2018). Traceability, reproducibility and wiki-exploration for “à-la-carte” reconstructions of genome-scale metabolic models. PLOS Computational Biology, 14(5), e1006146. https://doi.org/10.1371/journal.pcbi.1006146
License
This project is licensed under the GNU GPL-3.0-or-later, see the LICENSE.md file for details.
Requirements
Padmet requires Python. It is tested on Python 3.8 and 3.9 (with GitHub Actions). Due to dependencies (like biopython or docopt) it is recommended to use these versions and not version below 3.8.
If you use pip to install padmet, you should check that you have a version of setuptools >= 46.4.0. Version before the 46.4.0 will cause issue with how the padmet/init.py file is written. In this file, we have the version number with variable __version__ and 2 imports of padmet subfolder. In version before the 46.4.0, setuptools will search for __version__ in __init__.py but it will also use the import in this file. So if you use a pip install with this version, the package that will be installed by pip will be imported before being installed leading to an import error (it is explained in the point 1 of the versioning page of python).
To avoid this issue, if you have a version of setuptools < 46.4.0 you should upgrade setuptools with pip install --upgrade setuptools.
Padmet classes scripts (handling PADMet format) and most of the padmet utils scripts require:
- biopython to handle fasta files.
- cobra to handle sbml files and make Flux Balance Analysis.
- docopt for the command-line.
- lxml to handle XML file.
- python-libsbml to handle sbml files.
These 5 dependencies are installed with padmet.
For the padmet utils scripts (to use the PADMet format and the command-line):
- seaborn to create data visualization.
- matplotlib to create data visualization.
- networkx for network analysis (in visu_* scripts).
- igraph for network analysis (in visu_* scripts).
- tzlocal: required by rpy2.
- rpy2 to interface R and Python.
- scipy to create dendrogram (in dendrogramreactionsdistance).
- pandas to use dataframe of reaction presence/asbence.
- sklearn to visualize similarity between metabolic networks using MDS.
- gevent to handle issue when downloading files (in biggAPItopadmet).
- requests to download files (in biggAPItopadmet).
- grequests to asynchronously download files (in biggAPItopadmet).
- supervenn to create Venn diagram of reactions between multiple organisms (in dendrogramreactionsdistance).
Contrary to the 5 first depedencies, you have to install these packages with a pip install if you want to use them.
Scripts that need to install one of these optional dependencies:
- biggAPItopadmet.py: gevent, requests and grequests
- dendrogramreactionsdistance.py: matplotlib, seaborn, scipy, supervenn, rpy2 (with 'ape' and 'pvclust'), tzlocal and pandas
- visu_network.py: python-igraph
- visu_path.py: matplotlib, networkx and seaborn
- visusimilaritygsmn.py: matplotlib, pandas and scikit-learn
Installation
Installation with pip
pip install padmet
Use
PADMet can be used either with an entrypoint (padmet -h) or by making an import in python (import padmet).
There is a documentation in construction.
Entrypoint
```
usage:
padmet
options: -h --help Show help. -v Verbose.
The subcommands are:
utils: gbr Extract 'AND' and 'OR' from gene string
connection: biggAPItopadmet Create PADMet file from BIGG API checkorthologyinput Check proteomes for AuReMe checkorthologyinput Check proteomes for AuReMe enhancedmenecooutput Extract meneco output and add reaction informations extractorthofinder Extract result from OrthoFinder and creates SBML outputs extractrxnwithgeneassoc Extract from a SBML the reactions with gene association gbktofaa Extract the proteome from a genbank file genetotargets From a list of genes and a PADMet extract the targets linked to each gene getmetacycontology From a PADMet Ref file of MetaCyc create an XML ontology file metexplorevizexport Create a metexploreviz JSON to visualize metabolic network from padmet or sbml modelSeedtopadmet Create a PADMet file from modelSeed reactions and pathways files padmettoasp Convert PADMet to ASP padmettomatrix Create a a stoichiometry matrix from a PADMet file padmettopadmet Merge multiple PADMets into one PADMet file padmettotsv Convert a PADMet file into AskOmics compatible tsv files pgdbtopadmet Create PADMet from dat files sbmltocuration Extract reaction(s) from SBML file into an AuReMe compatible form sbmltopadmet Convert a SBML file into a PADMet file sbmltosbml Convert a SBML file into another SBML (level change) sbmlGenerator Create a SBML file using a PADMet file wikiGenerator Create Wiki files using a PADMet file
exploration: comparepadmet Compare n PADMet files comparesbml Compare n SBML files comparesbmlpadmet Compare a SBML file with a PADMet file convertsbmldb Use MetaNetX to convert a SBML from one database to another database dendrogramreactionsdistance Create a reaction absence/presence dendrogram using reactions.tsv file (from comparepadmet) fluxanalysis Run Flux Balance Analysis on a defined reaction getpwyfromrxn Return Pathway using a list of reactions from a PADMet Ref file padmetstats Compute stats on a PADMet file pathwayproduction Show the input/output of pathways from multiple PADMet prot2genome Perfoms the structural annotation of AuCoMe reportnetwork Creates reports for a PADMet file visunetwork Allows to visualize a PADMet or SBML network visupath Allows to visualize a pathway in PADMet network visusimilaritygsmn Visualize similarity between metabolic networks using MDS
management: manualcuration Update a PADMet Spec by filling specific forms padmetcompart For a given PADMet file, check and update compartment padmetmedium For a given set of compounds, create 2 reactions for each compounds to maintain consistency of the network for flux analysis. relationcuration Manually curate PADMet relation
See 'padmet
Python import
```python from padmet.utils.connection.pgdbtopadmet import frompgdbto_padmet
padmetinstance = frompgdbtopadmet(pgdbfolder, extractgene=True) ```
Corresponding functions
| script | function to import | command-line |
|-------------------------------|---------------------------------------------------------------------------------------------------|------------------------------------|
| biggAPItopadmet | from padmet.utils.connection.biggAPI_to_padmet import biggAPI_to_padmet | padmet biggAPItopadmet |
| checkorthologyinput | from padmet.utils.connection.check_orthology_input import check_orthology_input | padmet checkorthologyinput |
| enhancedmenecooutput | from padmet.utils.connection.enhanced_meneco_output import check_orthology_input | padmet enhancedmenecooutput |
| extractorthofinder | ```from padmet.utils.connection.extractorthofinder import orthogroupstosbml| padmet extract_orthofinder |
| extract_orthofinder |from padmet.utils.connection.extractorthofinder import orthologuetosbml``` | padmet extractorthofinder |
| extractrxnwithgeneassoc | from padmet.utils.connection.extract_rxn_with_gene_assoc import extract_rxn_with_gene_assoc | padmet extractrxnwithgeneassoc |
| gbktofaa | from padmet.utils.connection.gbk_to_faa import gbk_to_faa | padmet gbktofaa |
| genetotargets | from padmet.utils.connection.gene_to_targets import gene_to_targets | padmet genetotargets |
| getmetacycontology | from padmet.utils.connection.get_metacyc_ontology import metacyc_to_ontology | padmet getmetacycontology |
| metexplorevizexport | ```from padmet.utils.connection.metexplorevizexport import metexplorevizexport``` | padmet metexplorevizexport |
| modelSeedtopadmet | from padmet.utils.connection.modelSeed_to_padmet import modelSeed_to_padmet | padmet modelSeedtopadmet |
| padmettoasp | from padmet.utils.connection.padmet_to_asp import padmet_to_asp | padmet padmettoasp |
| padmettomatrix | from padmet.utils.connection.padmet_to_matrix import padmet_to_matrix | padmet padmettomatrix |
| padmettopadmet | from padmet.utils.connection.padmet_to_padmet import padmet_to_padmet | padmet padmettopadmet |
| padmettotsv | from padmet.utils.connection.padmet_to_tsv import padmet_to_tsv | padmet padmettotsv |
| pgdbtopadmet | from padmet.utils.connection.pgdb_to_padmet import from_pgdb_to_padmet | padmet pgdbtopadmet |
| sbmlGenerator | from padmet.utils.connection.sbmlGenerator import padmet_to_sbml | padmet sbmlGenerator |
| sbmltocurationform | ```from padmet.utils.connection.sbmltocurationform import sbmltocuration| padmet sbml_to_curation_form |
| sbml_to_padmet |from padmet.utils.connection.sbmltopadmet import sbmltopadmetSpec| padmet sbml_to_padmet |
| sbml_to_sbml |from padmet.utils.connection.sbmltosbml import fromsbmltosbml``` | padmet sbmltosbml |
| wikiGenerator | from padmet.utils.connection.wikiGenerator import wikiGenerator | padmet wikiGenerator |
| comparepadmet | from padmet.utils.exploration.compare_padmet import compare_padmet | padmet comparepadmet |
| comparesbml | from padmet.utils.exploration.compare_sbml import compare_sbml | padmet comparesbml |
| comparesbmlpadmet | ```from padmet.utils.exploration.comparesbmlpadmet import comparesbmlpadmet``` | padmet comparesbmlpadmet |
| convertsbmldb | ```from padmet.utils.exploration.convertsbmldb import mapsbml| padmet convert_sbml_db |
| dendrogram_reactions_distance |from padmet.utils.exploration.dendrogramreactionsdistance import reactionfigurecreation|padmet dendrogram_reactions_distance|
| flux_analysis |from padmet.utils.exploration.fluxanalysis import fluxanalysis| padmet flux_analysis |
| get_pwy_from_rxn |from padmet.utils.exploration.getpwyfromrxn import getpwyfromrxn| padmet get_pwy_from_rxn |
| padmet_stats |from padmet.utils.exploration.padmetstats import computestats| padmet padmet_stats |
| pathway_production |from padmet.utils.exploration.pathwayproduction import pathwayproduction| padmet pathway_production |
| prot2genome |from padmet.utils.exploration.prot2genome import fromAucome| padmet prot2genome |
| report_network |padmetSpec.networkreport(outputdir, padmetReffile, verbose)``` | padmet reportnetwork |
| visunetwork | ```from padmet.utils.exploration.visunetwork import createcompoundsgraph| padmet visu_network |
| visu_path |from padmet.utils.exploration.visupath import visupath| padmet visu_path |
| visu_similarity_gsmn |from padmet.utils.exploration.visusimilaritygsmn import visusimilaritygsmn| padmet visu_similarity_gsmn |
| manual_curation | | padmet manual_curation |
| padmet_compart | | padmet padmet_compart |
| padmet_medium |from padmet.utils.exploration.padmetmedium import managemedium| padmet padmet_medium |
| relation_curation |from padmet.utils.exploration.relationcuration import getrelations``` | padmet relation_curation |
Owner
- Name: AuReMe
- Login: AuReMe
- Kind: organization
- Website: http://aureme.genouest.org/
- Repositories: 7
- Profile: https://github.com/AuReMe
AUtomated REconstruction of MEtabolic models
GitHub Events
Total
- Create event: 1
- Release event: 2
- Issues event: 1
- Watch event: 2
- Push event: 9
- Pull request event: 2
Last Year
- Create event: 1
- Release event: 2
- Issues event: 1
- Watch event: 2
- Push event: 9
- Pull request event: 2
Committers
Last synced: almost 3 years ago
All Time
- Total Commits: 317
- Total Committers: 10
- Avg Commits per committer: 31.7
- Development Distribution Score (DDS): 0.539
Top Committers
| Name | Commits | |
|---|---|---|
| AITE Meziane | m****e@i****r | 146 |
| Arnaud Belcour | a****r@i****r | 99 |
| Arnaud Belcour | a****r@g****m | 35 |
| Arnaud Belcour | a****r@i****r | 20 |
| phamongi | o****g@g****m | 7 |
| Arnaud Belcour | 1****r@u****m | 4 |
| Pauline | 3****G@u****m | 3 |
| Clémence Frioux | c****x@u****m | 1 |
| Jeanne GOT | j****t@i****r | 1 |
| Jeanne GOT | 4****t@u****m | 1 |
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 5
- Total pull requests: 8
- Average time to close issues: 3 months
- Average time to close pull requests: 4 minutes
- Total issue authors: 3
- Total pull request authors: 4
- Average comments per issue: 1.0
- Average comments per pull request: 0.0
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 1
- Average time to close issues: 3 months
- Average time to close pull requests: 21 minutes
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 1.0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- ArnaudBelcour (3)
- cfrioux (1)
- glucksfall (1)
Pull Request Authors
- mezianeAITE (4)
- cfrioux (3)
- ArnaudBelcour (1)
- PaulineGHG (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 424 last-month
- Total dependent packages: 1
- Total dependent repositories: 2
- Total versions: 37
- Total maintainers: 2
pypi.org: padmet
The PADMet package allows conciliating genomics and metabolic network information used to produce a genome-scale constraint-based metabolic model within a database that traces all the reconstruction process steps. It allows representing the metabolic model in the form of a Wiki containing all the used/traced information. Other standard outputs are made available with the package.
- Homepage: https://github.com/AuReMe/padmet
- Documentation: https://padmet.readthedocs.io/
- License: GPL-3.0-or-later
-
Latest release: 5.0.3
published over 1 year ago
Rankings
Dependencies
- biopython >=1.78
- cobra >=0.17.1
- docopt >=0.6.2
- gevent >=20.6.0
- grequests >=0.6.0
- lxml >=4.3.4
- matplotlib >=3.1.1
- networkx >=1.11
- pandas >=1.1.3
- python-igraph >=0.8.3
- python-libsbml >=5.18.0
- requests >=2.22.0
- rpy2 ==3.0.5
- scikit-learn >=0.23.2
- scipy >=1.3.0
- seaborn >=0.9.0
- supervenn >=0.3.1
- tzlocal >=2.1
- biopython >=1.78
- cobra >=0.17.1
- docopt >=0.6.2
- lxml >=4.3.4
- python-libsbml >=5.18.0
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- actions/setup-python v1 composite