Skip to content

settylab/Mellon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2c3f856 · Mar 12, 2025
Dec 12, 2024
Mar 10, 2025
Mar 12, 2025
Aug 21, 2024
Feb 12, 2025
Jun 23, 2023
Nov 19, 2024
Mar 12, 2025
Jun 21, 2024
Mar 10, 2025
Sep 20, 2022
Mar 10, 2025
Jul 17, 2024
Apr 11, 2023
Mar 10, 2025
Feb 16, 2024
Mar 10, 2025
Mar 10, 2025
Mar 10, 2025

Repository files navigation

Mellon

zenodo codecov pypi conda

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 Nature Methods and a preprint on bioRxiv. If you use Mellon for your work, please cite our paper.

@article{ottoQuantifyingCellstateDensities2024,
  title = {Quantifying Cell-State Densities in Single-Cell Phenotypic Landscapes Using {{Mellon}}},
  author = {Otto, Dominik J. and Jordan, Cailin and Dury, Brennan and Dien, Christine and Setty, Manu},
  date = {2024-06-18},
  journaltitle = {Nature Methods},
  issn = {1548-7105},
  doi = {10.1038/s41592-024-02302-w},
  url = {https://www.nature.com/articles/s41592-024-02302-w},
}

You can find our reproducibility repository to reproduce benchmarks and plots of the paper here.