{ "info": { "author": "Daniel Burkhardt, Krishnaswamy Lab, Yale University", "author_email": "daniel.burkhardt@yale.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Framework :: Jupyter", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Scientific/Engineering :: Bio-Informatics" ], "description": "# MELD (Manifold Enhancement of Latent Dimensions)\n### Quantifying the effect of experimental perturbations in scRNA-seq data.\n\n\n[![Latest PyPi version](https://img.shields.io/pypi/v/MELD.svg)](https://pypi.org/project/MELD/)\n[![Travis CI Build](https://api.travis-ci.com/KrishnaswamyLab/MELD.svg?branch=master)](https://travis-ci.com/KrishnaswamyLab/MELD)\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[![bioRxiv Preprint](https://zenodo.org/badge/DOI/10.1101/532846.svg)](https://doi.org/10.1101/532846)\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### Quick Start\n* [**Guided tutorial in Python**](https://nbviewer.jupyter.org/github/KrishnaswamyLab/MELD/blob/master/notebooks/Wagner2018_Chordin_Cas9_Mutagenesis.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, read our manuscript on BioRxiv.\n\n[**Quantifying the effect of experimental perturbations in single-cell RNA-sequencing data using graph signal processing**. Daniel B Burkhardt\\*, Jay S Stanley\\*, Ana Luisa Perdigoto, Scott A Gigante, Kevan C Herold, Guy Wolf, Antonio J Giraldez, David van Dijk, Smita Krishnaswamy. BioRxiv. doi:10.1101/532846.]()\n\nThe goal of MELD is to identify populations of cells that are most affected by an experimental perturbation. Consider a simple two-sample experiment: one experimental sample and one control sample.\n\nThe current state of the art is to cluster cells based on global gene expression then 1) calculate the number of cells from each condition in each cluster and 2) do differential expression analysis between conditions within each cluster. The fundamental flaw in this approach is that clusters obtained by global variation are more or less arbitrary partitions of the data. Users can vary parameters to get almost any number of clusters of whatever size they want, so there's no reason to expect that these clusters contain cells that are affected by the perturbation.\n\nMELD solves this problem by introducing the concept of the experimental signal as a *graph signal* on a cell similarity graph. MELD starts using the condition labels that indicate from which sample each cell was measured as the *Raw Experimental Signal* (RES). In signal processing terms, the RES is a noisy indicator of the effect of an experimental perturbation. This is because not only is the biological system and scRNA-seq measurement noisy, but also because an experimental perturbation is not expect to affect all cells in each sample equally. MELD uses methods from Graph Signal Processing to remove this noise to learn an Enhanced Experimental Signal that can be used to 1) identify individual cells that are the most or least enriched across conditions and 2) identify clusters of cells that are both transcriptionally similar are affected by the experimental perturbation to a similar extent.\n\n### Workflow\n\nThe basic MELD workflow is:\n1. Load, filter, normalize, and transform a counts matrix (or CyTOF data matrix) from each sample\n2. Concatenate the matrices from each sample\n * `data, batch_idx = scprep.utils.combine_batches([batch_1, batch_2])`\n3. Learn a cell similarity graph `G` using [`graphtools`](www.github.com/KrishnaswamyLab/graphtools)\n * `G = gt.Graph(data)`\n3. Visualize data using [`PHATE`](www.github.com/KrishnaswamyLab/PHATE)\n4. Create the RES using the batch label for each cell\n * `RES = np.array([-1 if b == '1' else 1 for b in batch_idx])`\n5. Filter the RES to recover the EES\n * `EES = MELD().fit_transform(G, RES)`\n6. Use the RES and EES to recover Vertex Frequency Clusters\n * `VertexFrequencyCluster(k).fit_predict(G, RES, EES)`\n\nNow you can identify which clusters have the highest or lowest EES values and which genes vary most strongly with the EES.\n\n### Installation\n\n\n```\npip install --user meld\n```\n\n### Requirements\n\nMELD requires Python >= 3.5. All other requirements are installed automatically by ``pip``.\n\n### Usage example\n```\n import meld\n import graphtools\n G = graphtools.Graph(data, use_pygsp=True)\n EES = meld.MELD().fit_transform(G=G, RES=RES)\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/KrishnaswamyLab/MELD/archive/v0.2.4.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/KrishnaswamyLab/MELD", "keywords": "big-data,manifold-learning,computational-biology", "license": "Dual License - See LICENSE file", "maintainer": "", "maintainer_email": "", "name": "meld", "package_url": "https://pypi.org/project/meld/", "platform": "", "project_url": "https://pypi.org/project/meld/", "project_urls": { "Download": "https://github.com/KrishnaswamyLab/MELD/archive/v0.2.4.tar.gz", "Homepage": "https://github.com/KrishnaswamyLab/MELD" }, "release_url": "https://pypi.org/project/meld/0.2.4/", "requires_dist": [ "numpy (>=1.14.0)", "scipy (>=1.1.0)", "graphtools (>=0.1.8.1)", "pandas (>=0.25)", "scprep (>=1.0)", "pygsp", "sphinx (<=1.8.5) ; extra == 'doc'", "sphinxcontrib-napoleon ; extra == 'doc'", "autodocsumm ; extra == 'doc'", "nose ; extra == 'test'", "nose2 ; extra == 'test'", "coverage ; extra == 'test'", "coveralls ; extra == 'test'", "scikit-learn ; extra == 'test'", "packaging ; extra == 'test'" ], "requires_python": "", "summary": "MELD", "version": "0.2.4" }, "last_serial": 5946249, "releases": { "0.0": [ { "comment_text": "", "digests": { "md5": "55b7e89145b572124e0fd1f3ac0a5383", "sha256": "5311032a375f9690bc3bd8ddfb097ede9406de07c1fe3cf9f7db138cbc7d57c6" }, "downloads": -1, "filename": "meld-0.0-py3.5.egg", "has_sig": false, "md5_digest": "55b7e89145b572124e0fd1f3ac0a5383", "packagetype": "bdist_egg", "python_version": "3.5", "requires_python": null, "size": 16127, "upload_time": "2019-02-01T21:59:10", "url": "https://files.pythonhosted.org/packages/c1/0b/cd1cc3644b3a257f0f5f511e7488c0a422a358bba1f368e61f673edc9e10/meld-0.0-py3.5.egg" }, { "comment_text": "", "digests": { "md5": "68c1bc33d45c2655f2c9316beb3823e6", "sha256": "147d464f4aa2cb66bdd5baa2ff2f9d2232c65f4e4c2294de3a074daab6774e2a" }, "downloads": -1, "filename": "meld-0.0-py3.6.egg", "has_sig": false, "md5_digest": "68c1bc33d45c2655f2c9316beb3823e6", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 15968, "upload_time": "2019-02-01T21:57:53", "url": "https://files.pythonhosted.org/packages/c1/fe/528c3fa2bef10904318fec8bdc363badf495bf8e553fac4e989eba47c8b3/meld-0.0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "45dd02a57e42dd10a8d48dc244366449", "sha256": "b3a50df1ae6c39719052ede69ffe2941897d08969a26e8cd562684dbd7474f16" }, "downloads": -1, "filename": "meld-0.0-py3.7.egg", "has_sig": false, "md5_digest": "45dd02a57e42dd10a8d48dc244366449", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 15998, "upload_time": "2019-02-01T21:57:58", "url": "https://files.pythonhosted.org/packages/3f/6e/a9e3885fab91f1ce4977e86c7fa37aa04f3722af464f958c24a857e28c5e/meld-0.0-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "e97cdc043bdf0e50534b2f396eb333e7", "sha256": "caeef3588d3b6605e0c048e2848d265bf6555b7eccc180e63932f740b45e5b3f" }, "downloads": -1, "filename": "meld-0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e97cdc043bdf0e50534b2f396eb333e7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 10403, "upload_time": "2019-01-29T20:44:31", "url": "https://files.pythonhosted.org/packages/e4/ff/5379a4a2b224070e2c7d101c02484b8486db37938f61f58534565fcbde80/meld-0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8c3f0874d6470805edeec3e4434809e7", "sha256": "07ec02541a8726d59b1b93b7c90a5126e75fc28654edb82dea7d4ddde5fc5cff" }, "downloads": -1, "filename": "meld-0.0.tar.gz", "has_sig": false, "md5_digest": "8c3f0874d6470805edeec3e4434809e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9390, "upload_time": "2019-01-29T20:44:34", "url": "https://files.pythonhosted.org/packages/03/26/40403273c75c2b5872420b411ef4dc5eb1e18073731f92647113ee5bee4d/meld-0.0.tar.gz" } ], "0.2.2a0": [ { "comment_text": "", "digests": { "md5": "7274af7ec6d370d3dad690179032aa3c", "sha256": "78b993d8360b1b783c8eaf9cab9f1486215ea07ae36af912c4f4d9340a8d0d8a" }, "downloads": -1, "filename": "meld-0.2.2a0-py3.5.egg", "has_sig": false, "md5_digest": "7274af7ec6d370d3dad690179032aa3c", "packagetype": "bdist_egg", "python_version": "3.5", "requires_python": null, "size": 14443, "upload_time": "2019-03-30T13:32:13", "url": "https://files.pythonhosted.org/packages/fb/7a/84928a5df5a59699bd916435433e951aa9c1fab3f434a23a5c84728d8c11/meld-0.2.2a0-py3.5.egg" }, { "comment_text": "", "digests": { "md5": "f279bbd3b197ae77a0a31fb95f43fbd4", "sha256": "49837cd964046737b7bb1feff751501fb95fa48c60fd16bab850ea4fa7f2dc87" }, "downloads": -1, "filename": "meld-0.2.2a0-py3.6.egg", "has_sig": false, "md5_digest": "f279bbd3b197ae77a0a31fb95f43fbd4", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 14298, "upload_time": "2019-03-30T13:31:58", "url": "https://files.pythonhosted.org/packages/9b/ab/745916a447b916824419a9d61b7dc03630a4a7a7e97abc6412fc6ac2bbdb/meld-0.2.2a0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "27ce24eca8e400ab82b791b0b6173cff", "sha256": "2186be866e1f99f1829e832b8754d4b3d90f77d543723ec3a2bc76b3387930d9" }, "downloads": -1, "filename": "meld-0.2.2a0-py3.7.egg", "has_sig": false, "md5_digest": "27ce24eca8e400ab82b791b0b6173cff", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 14324, "upload_time": "2019-03-30T13:32:08", "url": "https://files.pythonhosted.org/packages/5a/75/9583bd22fe07f4fb8b745e7b90dd60d2f88a8c9ac3e3cb32087da95c5289/meld-0.2.2a0-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "9f98a7c02aa0f839c7a0ba71554d1c12", "sha256": "29149fe600936787a3cfc0f3a0aef4f5dca70d395156b691ced0253bf6f69dea" }, "downloads": -1, "filename": "meld-0.2.2a0-py3-none-any.whl", "has_sig": false, "md5_digest": "9f98a7c02aa0f839c7a0ba71554d1c12", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20434, "upload_time": "2019-03-30T13:31:57", "url": "https://files.pythonhosted.org/packages/8f/be/685e258764d77be720422c2bcae1cca68d800b14e1b5d88c375f66127c19/meld-0.2.2a0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "67a00a9b1aef158bc527123ed5c1bd63", "sha256": "0f80db582ccaef2a925f473bd1bb0824ee852f153ae93e6bb0fbafc62e372b23" }, "downloads": -1, "filename": "meld-0.2.2a0.tar.gz", "has_sig": false, "md5_digest": "67a00a9b1aef158bc527123ed5c1bd63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8158, "upload_time": "2019-03-30T13:32:00", "url": "https://files.pythonhosted.org/packages/07/74/0994ad446f7c57ac2df68eaadddabe4284ad330dd445337ef5a04bb3bafe/meld-0.2.2a0.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "7494c1f851efee511990b80bb77ab2be", "sha256": "3cba5cfaa2b256ce008083bc62cd6c13c7ea7bda1a1bd5b3776cdc0a392dfe06" }, "downloads": -1, "filename": "meld-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "7494c1f851efee511990b80bb77ab2be", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21662, "upload_time": "2019-09-16T15:48:42", "url": "https://files.pythonhosted.org/packages/3b/07/54ff7c98a9e02d1a18bee3f8aabe41f41a46cc5e9d6706d656f146dd3967/meld-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0a89782809acf45e90f0599123a1e685", "sha256": "a44402d9acbb089059465169fce933f3b83adac293da14d4c9e473174679fec7" }, "downloads": -1, "filename": "meld-0.2.3.tar.gz", "has_sig": false, "md5_digest": "0a89782809acf45e90f0599123a1e685", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10174, "upload_time": "2019-09-16T15:48:43", "url": "https://files.pythonhosted.org/packages/31/cf/ec4d4d314d648835b2fc870f50a6cc13094824b7b18108b6fc9e7f670809/meld-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "65e8cc83c0c7623472f2cc5bfd1dd5dc", "sha256": "83fce93bf3127026350194b428aa5c03926ca1363b376604c5fb1aa60a211c1f" }, "downloads": -1, "filename": "meld-0.2.4-py3-none-any.whl", "has_sig": false, "md5_digest": "65e8cc83c0c7623472f2cc5bfd1dd5dc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21661, "upload_time": "2019-10-08T19:13:31", "url": "https://files.pythonhosted.org/packages/83/e7/79f4a97f0ac1710c2241b14b5fce37f43b73a3484735e5f41da1f5770965/meld-0.2.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0ea1a5691d725acf1b1b41c197f19125", "sha256": "e7647abde4469409093521062c8442f6f7eb1e49111293ca6db2486bcf45f459" }, "downloads": -1, "filename": "meld-0.2.4.tar.gz", "has_sig": false, "md5_digest": "0ea1a5691d725acf1b1b41c197f19125", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10182, "upload_time": "2019-10-08T19:13:32", "url": "https://files.pythonhosted.org/packages/e3/66/2ef010b167d3add9082465b695500bfecfecb2161fe1e48e59fdc58b1259/meld-0.2.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "65e8cc83c0c7623472f2cc5bfd1dd5dc", "sha256": "83fce93bf3127026350194b428aa5c03926ca1363b376604c5fb1aa60a211c1f" }, "downloads": -1, "filename": "meld-0.2.4-py3-none-any.whl", "has_sig": false, "md5_digest": "65e8cc83c0c7623472f2cc5bfd1dd5dc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21661, "upload_time": "2019-10-08T19:13:31", "url": "https://files.pythonhosted.org/packages/83/e7/79f4a97f0ac1710c2241b14b5fce37f43b73a3484735e5f41da1f5770965/meld-0.2.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0ea1a5691d725acf1b1b41c197f19125", "sha256": "e7647abde4469409093521062c8442f6f7eb1e49111293ca6db2486bcf45f459" }, "downloads": -1, "filename": "meld-0.2.4.tar.gz", "has_sig": false, "md5_digest": "0ea1a5691d725acf1b1b41c197f19125", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10182, "upload_time": "2019-10-08T19:13:32", "url": "https://files.pythonhosted.org/packages/e3/66/2ef010b167d3add9082465b695500bfecfecb2161fe1e48e59fdc58b1259/meld-0.2.4.tar.gz" } ] }