Skip to content


Switch branches/tags

Hetionet: an integrative network of disease

Hetionet is a hetnet — network with multiple node and edge (relationship) types — which encodes biology. The hetnet was designed for Project Rephetio, which aims to systematically identify why drugs work and predict new therapies for drugs. The research article describing Project Rephetio and Hetionet v1.0 is:

Systematic integration of biomedical knowledge prioritizes drugs for repurposing
Daniel S Himmelstein, Antoine Lizee, Christine Hessler, Leo Brueggeman, Sabrina L Chen, Dexter Hadley, Ari Green, Pouya Khankhanian, Sergio E Baranzini
eLife (2017-09-22) DOI: 10.7554/eLife.26726

Version 1.0 contains 47,031 nodes of 11 types and 2,250,197 relationships of 24 types. This repository is currently only a download location for Hetionet. The data integration and hetnet creation occurs in a separate repository (dhimmel/integrate) and is imported to this repository by import.ipynb.

Download Hetionet

Latest Zenodo DOI

The network is available in four formats:

The JSON and Neo4j formats contain node and edge properties, which are absent in the TSV and matrix formats, including licensing information. Therefore the recommended formats are JSON and Neo4j. Our hetio package in Python reads the JSON format, but it is otherwise a simple yet new format. The Neo4j graph database has an established and thriving ecosystem. However, if you would like to access Hetionet without Neo4j, then we suggest the JSON format. The matrix format refers to HetMat archives, which store edge adjacency matrices on disk. Additional usage information is available at the corresponding download locations.

Derivative Networks

This section contains networks that are derived, at least in part from Hetionet, but are not identical.

  • BEL: see pybel/hetionet-bel for Hetionet converted to Biological Expression Language (BEL). BEL expresses biological relationships in a machine-readable format. Changes or omission of certain nodes and edges were made to properly represent Hetionet in BEL, as documented in the hetionet-bel README. Currently, the repository contains exports of the BEL representation in multiple formats: as a BEL Script, as Nodelink JSON, and as GraphDati JSON. Contributed by Charles Tapley Hoyt.

Permuted Hetnets

We've created five permuted derivatives of Hetionet. The permutation randomizes edges while preserving node degree. Permuted hetnets are available in hetnet/permuted in JSON and Neo4j 2.3 formats. Relationship properties are omitted from the permuted hetnets.


Large files in this repository are stored using Git LFS. If cloning this repository, please make sure that Git LFS is installed on your system. Otherwise, git will checkout text pointers for large files rather than the large files themselves!

Network Description

describe contains summary statistics on the hetnet. See describe/nodes/metanodes.tsv for details on the node types in the hetnet. See describe/edges/metaedges.tsv for details on the edge types. See describe/definitions.json for definitions of metanodes, metaedges, and node/edge properties. See describe/styles.json for the standard colors to be used for displaying metanodes.

Below, we provide two hetnet visualizations. Panel A shows the metagraph (graph of types) for Hetionet. Panel B shows the actual hetnet with nodes laid out in circles by type. Color denotes edge type.

Hetionet v1.0 visualizations


All original content in this repository is released as CC0. However, the hetnet integrates data from many resources and users should consider the licensing of each source (see this table). We apply a license attribute on a per node and per edge basis for sources with defined licenses. However, some resources don't provide any license, so for those we've requested permission. More information is available on Thinklab.