Mellon#

https://zenodo.org/badge/DOI/10.5281/zenodo.8404223.svg https://codecov.io/github/settylab/Mellon/branch/main/graph/badge.svg?token=TKIKXK4MPG https://badge.fury.io/py/mellon.svg https://anaconda.org/conda-forge/mellon/badges/version.svg https://static.pepy.tech/personalized-badge/mellon?period=total&units=international_system&left_color=grey&right_color=lightgrey&left_text=Downloads https://github.com/settylab/mellon/raw/main/landscape.png?raw=true

Mellon is a non-parametric cell-state density estimator based on a nearest-neighbors-distance distribution. It uses a sparse gaussian process to produce a differntiable density function that can be evaluated out of sample.

Installation#

To install Mellon using pip you can run:

pip install mellon

or to install using conda you can run:

conda install -c conda-forge mellon

or to install using mamba you can run:

mamba install -c conda-forge mellon

Any of these calls should install Mellon and its dependencies within less than 1 minute. If the dependency jax is not autimatically installed, please refer to https://github.com/google/jax.

Documentation#

Please read the documentation or use this basic tutorial notebook.

Basic Usage#

import mellon
import numpy as np

X = np.random.rand(100, 10)  # 10-dimensional state representation for 100 cells
Y = np.random.rand(100, 10)  # arbitrary test data

model = mellon.DensityEstimator()
log_density_x = model.fit_predict(X)
log_density_y = model.predict(Y)

Citations#

The Mellon manuscript is available on bioRxiv If you use Mellon for your work, please cite our paper.

@article {Otto2023.07.09.548272,
    author = {Dominik Jenz Otto and Cailin Jordan and Brennan Dury and Christine Dien and Manu Setty},
    title = {Quantifying Cell-State Densities in Single-Cell Phenotypic Landscapes using Mellon},
    elocation-id = {2023.07.09.548272},
    year = {2023},
    doi = {10.1101/2023.07.09.548272},
    publisher = {Cold Spring Harbor Laboratory},
    URL = {https://www.biorxiv.org/content/early/2023/07/10/2023.07.09.548272},
    eprint = {https://www.biorxiv.org/content/early/2023/07/10/2023.07.09.548272.full.pdf},
    journal = {bioRxiv}
}

Index#