hictkpy icon indicating copy to clipboard operation
hictkpy copied to clipboard

Python bindings for hictk: read and write .cool and .hic files directly from Python

hictkpy


Downloads PyPI &nbsp Bioconda &nbsp Zenodo
Documentation Documentation
License License
CI CI Status &nbsp Build wheels Status
CodeQL CodeQL (C++) Status &nbsp CodeQL (Python) Status &nbsp CodeQL (GH Actions) Status
Fuzzy Testing Fuzzy Testing Status

Python bindings for hictk, a blazing fast toolkit to work with .hic and .cool files.

If you are looking for the R API, checkout the hictkR repository.

Installing hictkpy

hictkpy can be installed in various ways. The simplest method is using pip: pip install 'hictkpy[all]'.

Refer to Installation for alternative methods.

Using hictkpy

import hictkpy

path_to_clr = "file.mcool"  # "file.hic"

clr = hictkpy.File(path_to_clr, 100_000)
sel = clr.fetch("chr1")

df = sel.to_df()     # Get interactions as a pandas.DataFrame
m1 = sel.to_numpy()  # Get interactions as a numpy matrix
m2 = sel.to_csr()    # Get interactions as a scipy.sparse.csr_matrix

For more detailed examples refer to the Quickstart section in the documentation.

The complete documentation for the hictkpy API is available here.

Citing

If you use hictkpy in your research, please cite the following publication:

Roberto Rossini, Jonas Paulsen, hictk: blazing fast toolkit to work with .hic and .cool files
Bioinformatics, Volume 40, Issue 7, July 2024, btae408, https://doi.org/10.1093/bioinformatics/btae408

BibTex
@article{hictk,
    author = {Rossini, Roberto and Paulsen, Jonas},
    title = "{hictk: blazing fast toolkit to work with .hic and .cool files}",
    journal = {Bioinformatics},
    volume = {40},
    number = {7},
    pages = {btae408},
    year = {2024},
    month = {06},
    issn = {1367-4811},
    doi = {10.1093/bioinformatics/btae408},
    url = {https://doi.org/10.1093/bioinformatics/btae408},
    eprint = {https://academic.oup.com/bioinformatics/article-pdf/40/7/btae408/58385157/btae408.pdf},
}