Skip to main content

Hetnets in Python

Project description

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/dhimmel/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 <hetio/__init__.py>`__.
  2. Add a release notes file in `release-notes <release-notes>`__. Format as a commit message that will be used as the GitHub release description.
  3. Run the following commands:

sh   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 --tags

  1. Recommended: Edit the GitHub release to improve formating and add a Zenodo badge.

Project details


Release history Release notifications

This version
History Node

0.2.8

History Node

0.2.7

History Node

0.2.6

History Node

0.2.5

History Node

0.2.4

History Node

0.2.3

History Node

0.2.2

History Node

0.2.1

History Node

0.2.0

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
hetio-0.2.8.tar.gz (20.4 kB) Copy SHA256 hash SHA256 Source None Mar 27, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page