Skip to main content

Hetnets in Python

Project description

Hetnets in Python
=================

`|Latest DOI| <https://zenodo.org/badge/latestdoi/14475/dhimmel/hetio>`_
`|GitHub issues| <https://github.com/dhimmel/hetio/issues>`_ `|Build
Status| <https://travis-ci.org/dhimmel/hetio>`_

Background
----------

**Hetnets**: Hetnets, also
`called <https://doi.org/10.15363/thinklab.d104>`_ *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 <http://het.io/hnep/>`_. 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 <https://doi.org/10.1371/journal.pcbi.1004259>`_ to predict
disease-associated genes and continues with a successive
`study <https://doi.org/10.15363/thinklab.4>`_ to repurpose drugs.

**Caution**: Documentation is currently lacking, testing coverage is
poor, and the API is unstable. Contributions are welcome. Please use
`GitHub Issues <https://github.com/dhimmel/hetio/issues>`_ for feedback,
questions, or troubleshooting.

Installation
------------

`|PyPI| <https://pypi.python.org/pypi/hetio>`_

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 -e .`` from the repository's root directory. The ``-e``
flag specifies
`editable <https://pythonhosted.org/setuptools/setuptools.html#development-mode>`_
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

.. |Latest DOI| image:: https://zenodo.org/badge/14475/dhimmel/hetio.svg
.. |GitHub
issues| image:: https://img.shields.io/github/issues/dhimmel/hetio.svg
.. |Build
Status| image:: https://travis-ci.org/dhimmel/hetio.svg?branch=master
.. |PyPI| image:: https://img.shields.io/pypi/v/hetio.svg

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.2.tar.gz (17.2 kB view hashes)

Uploaded Source

Built Distributions

hetio-0.2.2-py3.6.egg (47.0 kB view hashes)

Uploaded Source

hetio-0.2.2-py3-none-any.whl (21.7 kB view hashes)

Uploaded Python 3

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