Loads SIGNOR data into NDEx
Project description
NDEx Signor Content Loader
Python application that loads Signor data into NDEx
This tool downloads data files from Signor and performs the following operations:
1) The text files are loaded into a network using this loadplan
2) The edge attribute direct is set to True if value is ‘t’ otherwise its set to False
3) Using values in the databasea and databaseb data files, the represents field found on each node is prefixed with uniprot: if the database value is UNIPROT and signor: if the database value is SIGNOR
4) The compartment node attribute is set to cytoplasm if its not set (which is case for all nodes in FULL-Human, Full-Rat, and Full-Mouse networks)
5) Any negative or non-numeric citations are removed from the citation edge attribute (There were multiple cases of -1 and Other). In addition, a specific PMC:## is updated to its pubmed id.
6) The layout of the network is created using the spring layout, but with additional logic that positions nodes in a vertical based on value of the compartment node attribute. The ordering is as follows:
extracellular are placed at the top
receptor are below extracellular
cytoplasm are placed in the middle
factor are below cytoplasm
phenotypeList are placed at the bottom
7) The following network attributes are set
name is set to data from Signor service getPathwayData.php?pathway= (except for the full networks which have a more generic description)
author is set to data from Signor service getPathwayData.php?pathway= (unless its empty in which case its not added to network)
organism is set to Human, 9606, Homo sapiens (except for Full Rat and Mouse networks)
prov:wasGeneratedBy is set to ndexsignorloader <VERSION> (example: ndexsignorloader 1.0.0)
prov:wasDerivedFrom set to URL to download data file (or in case of full networks its set to Signor site)
version is set to Abbreviated day-month-year (example: 05-Jun-2019)
description is taken from Signor service getPathwayData.php?pathway=
rightsHolder is set to Prof. Gianni Cesareni
rights is set to Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
reference is set to citation for SIGNOR: a database of causal relationships between biological entities
labels is set to data from Signor service getPathwayData.php?pathway= (not set for full networks)
type is set to a list with pathway and if known type of pathway
__normalizationversion is set to 0.1
Dependencies
Compatibility
Python 3.3+
Installation
git clone https://github.com/ndexcontent/ndexsignorloader
cd ndexsignorloader
make dist
pip install dist/ndexloadsignor*whl
Run make command with no arguments to see other build/deploy options including creation of Docker image
make
Output:
clean remove all build, test, coverage and Python artifacts
clean-build remove build artifacts
clean-pyc remove Python file artifacts
clean-test remove test and coverage artifacts
lint check style with flake8
test run tests quickly with the default Python
test-all run tests on every Python version with tox
coverage check code coverage quickly with the default Python
docs generate Sphinx HTML documentation, including API docs
servedocs compile the docs watching for changes
testrelease package and upload a TEST release
release package and upload a release
dist builds source and wheel package
install install the package to the active Python's site-packages
dockerbuild build docker image and store in local repository
dockerpush push image to dockerhub
Configuration
The ndexloadsignor.py requires a configuration file in the following format be created.
The default path for this configuration is ~/.ndexutils.conf
but can be overridden with
--conf
flag.
Format of configuration file
[<value in --profile (default ndexsignorloader)>]
user = <NDEx username>
password = <NDEx password>
server = <NDEx server(omit http) ie public.ndexbio.org>
Example configuration file
[ndexsignorloader_dev]
user = joe123
password = somepassword123
server = dev.ndexbio.org
Needed files
TODO: Add description of needed files
Usage
For information invoke ndexloadsignor.py -h
Example usage
TODO: Add information about example usage
ndexloadsignor.py # TODO Add other needed arguments here
Via Docker
Example usage
TODO: Add information about example usage
docker run -v `pwd`:`pwd` -w `pwd` coleslawndex/ndexsignorloader:0.1.0 ndexloadsignor.py --conf conf # TODO Add other needed arguments here
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
0.2.0 (2019-06-28)
Changed prov:wasDerivedFrom network attribute to just signor website URL for full networks
Removed author network attribute if no value is found
Removed labels attribute for full networks
0.1.0 (2019-06-27)
First release on PyPI.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ndexsignorloader-0.2.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 037b8e54c5ac4cc4fee630920ad7cf1e4c1146aaeb62a5a6558ad57781660762 |
|
MD5 | a11292d92365fc96eaf46a9061e46a2e |
|
BLAKE2b-256 | aaa156c66f6bcf11377eba08afe7a96319d1e75d4c04603249b48ec15a5191c8 |