# MELD
### Quantifying the effect of experimental perturbations at single-cell resolution
[![Latest PyPi version](https://img.shields.io/pypi/v/MELD.svg)](https://pypi.org/project/MELD/)
![GitHub Actions](https://github.com/KrishnaswamyLab/MELD/workflows/Unit%20Tests/badge.svg)
[![Coverage Status](https://coveralls.io/repos/github/KrishnaswamyLab/MELD/badge.svg?branch=master)](https://coveralls.io/github/KrishnaswamyLab/MELD?branch=master)
[![Read the Docs](https://img.shields.io/readthedocs/meld-docs.svg)](https://meld-docs.readthedocs.io/)
[![Article](https://zenodo.org/badge/DOI/10.1038/s41587-020-00803-5.svg)](https://doi.org/10.1038/s41587-020-00803-5)
[![Twitter](https://img.shields.io/twitter/follow/KrishnaswamyLab.svg?style=social&label=Follow)](https://twitter.com/KrishnaswamyLab)
[![GitHub stars](https://img.shields.io/github/stars/KrishnaswamyLab/MELD.svg?style=social&label=Stars)](https://github.com/KrishnaswamyLab/MELD/)
### Tutorials
For a quick-start tutorial of MELD in Google CoLab, check out this notebook from our [Machine Learning Workshop](https://krishnaswamylab.org/workshop):
* [**MELD Quick Start - Zebrafish data**](https://colab.research.google.com/github/KrishnaswamyLab/SingleCellWorkshop/blob/master/exercises/DifferentialAbundance/Answers_Wagner2018_Chordin_Cas9_Mutagenesis.ipynb)
If you're looking for an in-depth tutorial of MELD and VFC, start here:
* [**Guided tutorial in Python - Zebrafish data**](https://nbviewer.jupyter.org/github/KrishnaswamyLab/MELD/blob/main/notebooks/Wagner2018_Chordin_Cas9_Mutagenesis.ipynb).
If you'd like to see how to use MELD without VFC, start here:
* [**Tutorial using MELD without VFC - T cell data**](https://nbviewer.jupyter.org/github/KrishnaswamyLab/MELD/blob/main/notebooks/MELD_thresholding.Tcell.ipynb).
### Introduction
MELD is a Python package for quantifying the effects of experimental perturbations. For an in depth explanation of the algorithm, please read the associated article:
[**Quantifying the effect of experimental perturbations at single-cell resolution**. Daniel B Burkhardt\*, Jay S Stanley\*, Alexander Tong, Ana Luisa Perdigoto, Scott A Gigante, Kevan C Herold, Guy Wolf, Antonio J Giraldez, David van Dijk, Smita Krishnaswamy. Nature Biotechnology. 2021.](https://www.nature.com/articles/s41587-020-00803-5)
The goal of MELD is to identify populations of cells that are most affected by an experimental perturbation. Rather than clustering the data first and calculating differential abundance of samples within clusters, MELD provides a density estimate for each scRNA-seq sample for every cell in each dataset. Comparing the ratio between the density of each sample provides a quantitative estimate the effect of a perturbation at the single-cell level. We can then identify the cells most or least affected by the perturbation.
You can also watch a seminar explaining MELD given by [@dburkhardt](https://github.com/dburkhardt): [![Video](https://img.shields.io/static/v1?label=YouTube&message=Watch%20recording&color=red&logo=youtube)](https://youtu.be/PlVk1Pe0SkQ)
### Installation
```
pip install meld
```
### Requirements
MELD requires Python >= 3.6. All other requirements are installed automatically by ``pip``.
### Usage example
```
import numpy as np
import meld
# Create toy data
n_samples = 500
n_dimensions = 100
data = np.random.normal(size=(n_samples, n_dimensions))
sample_labels = np.random.choice(['treatment', 'control'], size=n_samples)
# Estimate density of each sample over the graph
sample_densities = meld.MELD().fit_transform(data, sample_labels)
# Normalize densities to calculate sample likelihoods
sample_likelihoods = meld.utils.normalize_densities(sample_densities)
```
Raw data
{
"_id": null,
"home_page": "https://github.com/KrishnaswamyLab/MELD",
"name": "meld",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.5",
"maintainer_email": "",
"keywords": "big-data,manifold-learning,computational-biology",
"author": "Daniel Burkhardt, Krishnaswamy Lab, Yale University",
"author_email": "daniel.burkhardt@yale.edu",
"download_url": "https://files.pythonhosted.org/packages/64/34/7a43890031d05b2d3ed269ea6fa256016a8675f2420255caf22bf33bff98/meld-1.0.2.tar.gz",
"platform": null,
"description": "# MELD\n### Quantifying the effect of experimental perturbations at single-cell resolution\n\n\n[![Latest PyPi version](https://img.shields.io/pypi/v/MELD.svg)](https://pypi.org/project/MELD/)\n![GitHub Actions](https://github.com/KrishnaswamyLab/MELD/workflows/Unit%20Tests/badge.svg)\n[![Coverage Status](https://coveralls.io/repos/github/KrishnaswamyLab/MELD/badge.svg?branch=master)](https://coveralls.io/github/KrishnaswamyLab/MELD?branch=master)\n[![Read the Docs](https://img.shields.io/readthedocs/meld-docs.svg)](https://meld-docs.readthedocs.io/)\n[![Article](https://zenodo.org/badge/DOI/10.1038/s41587-020-00803-5.svg)](https://doi.org/10.1038/s41587-020-00803-5)\n[![Twitter](https://img.shields.io/twitter/follow/KrishnaswamyLab.svg?style=social&label=Follow)](https://twitter.com/KrishnaswamyLab)\n[![GitHub stars](https://img.shields.io/github/stars/KrishnaswamyLab/MELD.svg?style=social&label=Stars)](https://github.com/KrishnaswamyLab/MELD/)\n\n### Tutorials\nFor a quick-start tutorial of MELD in Google CoLab, check out this notebook from our [Machine Learning Workshop](https://krishnaswamylab.org/workshop):\n* [**MELD Quick Start - Zebrafish data**](https://colab.research.google.com/github/KrishnaswamyLab/SingleCellWorkshop/blob/master/exercises/DifferentialAbundance/Answers_Wagner2018_Chordin_Cas9_Mutagenesis.ipynb)\n\nIf you're looking for an in-depth tutorial of MELD and VFC, start here:\n* [**Guided tutorial in Python - Zebrafish data**](https://nbviewer.jupyter.org/github/KrishnaswamyLab/MELD/blob/main/notebooks/Wagner2018_Chordin_Cas9_Mutagenesis.ipynb).\n\nIf you'd like to see how to use MELD without VFC, start here:\n* [**Tutorial using MELD without VFC - T cell data**](https://nbviewer.jupyter.org/github/KrishnaswamyLab/MELD/blob/main/notebooks/MELD_thresholding.Tcell.ipynb).\n\n### Introduction\n\nMELD is a Python package for quantifying the effects of experimental perturbations. For an in depth explanation of the algorithm, please read the associated article:\n\n[**Quantifying the effect of experimental perturbations at single-cell resolution**. Daniel B Burkhardt\\*, Jay S Stanley\\*, Alexander Tong, Ana Luisa Perdigoto, Scott A Gigante, Kevan C Herold, Guy Wolf, Antonio J Giraldez, David van Dijk, Smita Krishnaswamy. Nature Biotechnology. 2021.](https://www.nature.com/articles/s41587-020-00803-5)\n\nThe goal of MELD is to identify populations of cells that are most affected by an experimental perturbation. Rather than clustering the data first and calculating differential abundance of samples within clusters, MELD provides a density estimate for each scRNA-seq sample for every cell in each dataset. Comparing the ratio between the density of each sample provides a quantitative estimate the effect of a perturbation at the single-cell level. We can then identify the cells most or least affected by the perturbation.\n\nYou can also watch a seminar explaining MELD given by [@dburkhardt](https://github.com/dburkhardt): [![Video](https://img.shields.io/static/v1?label=YouTube&message=Watch%20recording&color=red&logo=youtube)](https://youtu.be/PlVk1Pe0SkQ)\n\n### Installation\n\n\n```\npip install meld\n```\n\n### Requirements\n\nMELD requires Python >= 3.6. All other requirements are installed automatically by ``pip``.\n\n### Usage example\n\n```\n import numpy as np\n import meld\n\n # Create toy data\n n_samples = 500\n n_dimensions = 100\n data = np.random.normal(size=(n_samples, n_dimensions))\n sample_labels = np.random.choice(['treatment', 'control'], size=n_samples)\n\n # Estimate density of each sample over the graph\n sample_densities = meld.MELD().fit_transform(data, sample_labels)\n\n # Normalize densities to calculate sample likelihoods\n sample_likelihoods = meld.utils.normalize_densities(sample_densities)\n```\n",
"bugtrack_url": null,
"license": "Dual License - See LICENSE file",
"summary": "MELD",
"version": "1.0.2",
"project_urls": {
"Download": "https://github.com/KrishnaswamyLab/MELD/archive/v1.0.2.tar.gz",
"Homepage": "https://github.com/KrishnaswamyLab/MELD"
},
"split_keywords": [
"big-data",
"manifold-learning",
"computational-biology"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0a96bc37de0bf197ce026ebba72bf7267f5a7124cc79a276781cdb6220d349f1",
"md5": "777bd5592488c7e69f9c5902cde3e6b1",
"sha256": "251c469fc041b7daa3abec22b69fbfeafc7cebb10b4338cdf87450be5ad85fd4"
},
"downloads": -1,
"filename": "meld-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "777bd5592488c7e69f9c5902cde3e6b1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.5",
"size": 26434,
"upload_time": "2023-07-20T12:39:19",
"upload_time_iso_8601": "2023-07-20T12:39:19.060681Z",
"url": "https://files.pythonhosted.org/packages/0a/96/bc37de0bf197ce026ebba72bf7267f5a7124cc79a276781cdb6220d349f1/meld-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "64347a43890031d05b2d3ed269ea6fa256016a8675f2420255caf22bf33bff98",
"md5": "0da1f3ce34f319a1e2ee59600d59b8d7",
"sha256": "696f67d4e88fc51f07463dcf96d3195734d1e3464c55ee95ebed2cf1c38134e9"
},
"downloads": -1,
"filename": "meld-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "0da1f3ce34f319a1e2ee59600d59b8d7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 29129,
"upload_time": "2023-07-20T12:39:20",
"upload_time_iso_8601": "2023-07-20T12:39:20.550180Z",
"url": "https://files.pythonhosted.org/packages/64/34/7a43890031d05b2d3ed269ea6fa256016a8675f2420255caf22bf33bff98/meld-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-20 12:39:20",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "KrishnaswamyLab",
"github_project": "MELD",
"travis_ci": true,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "numpy",
"specs": [
[
">=",
"1.14.0"
]
]
},
{
"name": "scipy",
"specs": [
[
">=",
"1.1.0"
]
]
},
{
"name": "graphtools",
"specs": [
[
">=",
"1.5.0"
]
]
},
{
"name": "pandas",
"specs": [
[
">=",
"0.25"
]
]
},
{
"name": "scprep",
"specs": [
[
">=",
"1.0"
]
]
},
{
"name": "pygsp",
"specs": []
},
{
"name": "phate",
"specs": [
[
">=",
"0.3.0"
]
]
}
],
"lcname": "meld"
}