Skip to main content

Hetnets in Python

Project description

Hetnets in Python

Latest DOI GitHub issues Build Status

Background

Hetnets: Hetnets, also called heterogeneous information networks, are graphs with multiple node and edge types. Hetnets are both multipartite and multirelational. They provide a scalable, intuitive, and frictionless structure for data integration.

Purpose: This package provides data structures for hetnets and algorithms for edge prediction. It only supports hetnets, which is its primary advantage compared to other network software. Node/edge attributes and edge directionality are supported.

Impetus: Development originated with a study to predict disease-associated genes and continues with a successive study to repurpose drugs.

Caution: Documentation is currently spotty, testing coverage is moderate, and the API is not fully stable. Contributions are welcome. Please use GitHub Issues for feedback, questions, or troubleshooting.

Installation

PyPI

Please use Python 3.4 or higher. To install the current PyPI version (recommended), run:

pip install hetio

For the latest GitHub version, run:

pip install git+https://github.com/hetio/hetio.git#egg=hetio

For development, clone or download-and-extract the repository. Then run pip install --editable . from the repository's root directory. The --editable flag specifies editable mode, so updating the source updates your installation.

Once installed, tests can be executed by running py.test test/ from the repository's root directory.

Design

A Graph object stores a heterogeneous network and relies on the following classes:

  1. Graph
  2. MetaGraph
  3. Edge
  4. MetaEdge

Release instructions

This section is only relevant for project maintainers. Travis CI deployments are used to upload releases to PyPI and GitHub releases. To create a new release, do the following:

  1. Bump the version in __init__.py.

  2. Add a release notes file in release-notes. Format as a commit message that will be used as the GitHub release description.

  3. Run the following commands:

TAG=v`python setup.py --version`
git add hetio/__init__.py release-notes/$TAG.*
git commit --message "Upgrade to $TAG"
git push
git tag --annotate $TAG --file release-notes/$TAG.*
git push upstream $TAG
  1. Recommended: Edit the GitHub release to improve formatting and add a Zenodo badge.

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

hetio-0.2.9.tar.gz (22.3 kB view details)

Uploaded Source

Built Distribution

hetio-0.2.9-py3-none-any.whl (25.1 kB view details)

Uploaded Python 3

File details

Details for the file hetio-0.2.9.tar.gz.

File metadata

  • Download URL: hetio-0.2.9.tar.gz
  • Upload date:
  • Size: 22.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for hetio-0.2.9.tar.gz
Algorithm Hash digest
SHA256 43e2050d2ca72baa1d4e4aaaf0d5644508a221acca3ccccf849e0eaeaf95df4f
MD5 0c365d27d3812de4bf3dc8a1881b9bc3
BLAKE2b-256 44604d4f9343aecca5fef664803cde2594aa699934d74e3a11fda5e6bae89be6

See more details on using hashes here.

File details

Details for the file hetio-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: hetio-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 25.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.3

File hashes

Hashes for hetio-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 deab561c3966bb3fe5634d24d284699aa97465f08584279ca3fbd56bc483ee98
MD5 faa4bb4cec46c37b01854cdbdf4460ce
BLAKE2b-256 e66767ac9c230a6f37363472ffc53f4330956dfda58cc9d6ac0c0c18658a22ae

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page