The hifive package is a set of tools for handling HiC and 5C data. This includes managing data from mapped reads, either in bam, mat, or raw formats. All stages use hdf5 dictionaries for fast access and minimal memory and storage usage.

This package includes methods for normalizing data from either HiC or 5C experiments at the fragment-end, or fragment level resolution, respectively. Once normalized, data can be used for plotting, binning, or other statistical tests within the package very quickly.

Code can be found on github. Documentation can be found here.

HiFive can be installed three different ways: dowloading or cloning the git repository and manually installing, using pip, or using the HiFive docker container msauria/hifive.

Installing manually requires obtaining a copy of the repository, either cloning the repository,

> git clone https://www.github.com/bxlab/hifive

or downloading a tarball of the repository.

> wget https://www.github.com/bxlab/tarball/master && tar -xzf master

Finally, run the setup.py script to install.

> python setup.py install

To install to a specific location,

> python setup.py install --prefix /your/desired/location

Installing via pip is simple.

> pip install hifive

Finally, HiFive can be loaded as a docker container, which already has built all of the library, program, and python package dependencies so it is ready to got without any additional work.

> docker pull msauria/hifive:latest

This can be used either as an interactive command-line environment,

> docker run -i -t -v /data your/data/folder msauria/hifive:latest /bin/bash

where the folder /data will be created inside the container and references your/data/folder, making your data accessible to the container. You can also run hifive directly in the background.

> docker run -b -v /data your/data/folder msauria/hifive:latest hifive [command] [options]