multiscale-phate


Namemultiscale-phate JSON
Version 0.0 PyPI version JSON
download
home_pagehttps://github.com/KrishnaswamyLab/Multiscale_PHATE
Summarymultiscale_phate
upload_time2020-11-18 22:46:53
maintainer
docs_urlNone
authorManik Kuchroo & Scott Gigante, Yale University
requires_python>=3.6
licenseGNU General Public License Version 3
keywords big-data computational-biology dimensionality-reduction visualization embedding manifold-learning
VCS
bugtrack_url
requirements numpy scipy graphtools phate scikit-learn tasklogger joblib
Travis-CI
coveralls test coverage No coveralls.
            Multiscale PHATE
================

[![Latest PyPi version](https://img.shields.io/pypi/v/multiscale_phate.svg)](https://pypi.org/project/multiscale_phate/)
[![Travis CI Build](https://api.travis-ci.com/KrishnaswamyLab/Multiscale_PHATE.svg?branch=master)](https://travis-ci.com/KrishnaswamyLab/Multiscale_PHATE)
[![Coverage Status](https://coveralls.io/repos/github/KrishnaswamyLab/Multiscale_PHATE/badge.svg?branch=master)](https://coveralls.io/github/KrishnaswamyLab/Multiscale_PHATE?branch=master)
[![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/Multiscale_PHATE.svg?style=social&label=Stars)](https://github.com/KrishnaswamyLab/Multiscale_PHATE/)
[![Code style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

Multiscale PHATE is a python package for multiresolution analysis of high dimensional data. For an in-depth explanation of the algorithm and applications, please read our manuscript on [BioRxiv](https://www.biorxiv.org/content/10.1101/2020.11.15.383661v1.article-info).

The biomedical community is producing increasingly high dimensional datasets integrated from hundreds of patient samples that current computational techniques are unable to explore. Current tools for dimensionality reduction, such as tSNE, UMAP, and PCA, and clustering, such as Louvain and Leiden, only show a single salient level of granularity in biomedical data. When applied to cellular datasets currently being produced, these techniques are able to visualize and cluster major cell types such as B cells, T cells and myeloid cells. Differences between patient disease states, however, may not be found at the granularity of cell type alone. In fact, appreciation of a finer resolution the manifold would reveal subsets that may be predictive of outcome. This phenomenon is found across biomedical data science, as the cellular state space is known to form a collection of sub-manifolds that disease status can differentially affect.

The goal of Multiscale PHATE is to learn and visualize abstract cellular features and groupings of the data at all levels of granularity in an efficient manner to identify meaningful resolutions. Our approach learns a tree of data granularities which can be cut at coarse levels for high level summarizations of data as well as at fine levels for detailed representations on subsets. Our algorithm is based on a dynamic process we have developed called diffusion condensation, that computes a manifold-intrinsic diffusion space on the original data before slowly condensing data points towards local centers of gravity to form natural, data-driven groupings across multiple granularities.  While this may sound computationally inefficient, we show that we are able to perform these calculations as well as visualize and cluster the data significantly faster than “single-scale” visualization techniques like tSNE, UMAP or PHATE, allowing the analysis of millions of cells within minutes.  When combined with other computational algorithms for high dimensional data analysis, such as MELD, DREMI and TrajcetoryNet, Multiscale PHATE is able to provide deep and detailed insights in biological processes.

Installation
------------

Multiscale PHATE is available on `pip`. Install by running the following in a terminal:

```
pip install --user git+https://github.com/KrishnaswamyLab/Multiscale_PHATE
```

Quick Start
-----------

```
import multiscale_phate
mp_op = multiscale_phate.Multiscale_PHATE()
mp_embedding, mp_clusters, mp_sizes, tree = mp_op.fit_transform(X)

# Plot optimal visualization
scprep.plot.scatter2d(mp_embedding, s = mp_sizes, c = mp_clusters,
                      fontsize=16, ticks=False,label_prefix="Multiscale PHATE", figsize=(16,12))
```

Guided Tutorial
-----------

For more details on using Multiscale PHATE, see our [guided tutorial](tutorial/10X_pbmc.ipynb) using 10X's public PBMC4k dataset.



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/KrishnaswamyLab/Multiscale_PHATE",
    "name": "multiscale-phate",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "big-data,computational-biology,dimensionality-reduction,visualization,embedding,manifold-learning",
    "author": "Manik Kuchroo & Scott Gigante, Yale University",
    "author_email": "manik.kuchroo@yale.edu",
    "download_url": "https://files.pythonhosted.org/packages/82/30/9f6a47268209197fad84c125802942d77b608bad0c8df4864ddeec484e5f/multiscale_phate-0.0.tar.gz",
    "platform": "",
    "description": "Multiscale PHATE\n================\n\n[![Latest PyPi version](https://img.shields.io/pypi/v/multiscale_phate.svg)](https://pypi.org/project/multiscale_phate/)\n[![Travis CI Build](https://api.travis-ci.com/KrishnaswamyLab/Multiscale_PHATE.svg?branch=master)](https://travis-ci.com/KrishnaswamyLab/Multiscale_PHATE)\n[![Coverage Status](https://coveralls.io/repos/github/KrishnaswamyLab/Multiscale_PHATE/badge.svg?branch=master)](https://coveralls.io/github/KrishnaswamyLab/Multiscale_PHATE?branch=master)\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/Multiscale_PHATE.svg?style=social&label=Stars)](https://github.com/KrishnaswamyLab/Multiscale_PHATE/)\n[![Code style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\nMultiscale PHATE is a python package for multiresolution analysis of high dimensional data. For an in-depth explanation of the algorithm and applications, please read our manuscript on [BioRxiv](https://www.biorxiv.org/content/10.1101/2020.11.15.383661v1.article-info).\n\nThe biomedical community is producing increasingly high dimensional datasets integrated from hundreds of patient samples that current computational techniques are unable to explore. Current tools for dimensionality reduction, such as tSNE, UMAP, and PCA, and clustering, such as Louvain and Leiden, only show a single salient level of granularity in biomedical data. When applied to cellular datasets currently being produced, these techniques are able to visualize and cluster major cell types such as B cells, T cells and myeloid cells. Differences between patient disease states, however, may not be found at the granularity of cell type alone. In fact, appreciation of a finer resolution the manifold would reveal subsets that may be predictive of outcome. This phenomenon is found across biomedical data science, as the cellular state space is known to form a collection of sub-manifolds that disease status can differentially affect.\n\nThe goal of Multiscale PHATE is to learn and visualize abstract cellular features and groupings of the data at all levels of granularity in an efficient manner to identify meaningful resolutions. Our approach learns a tree of data granularities which can be cut at coarse levels for high level summarizations of data as well as at fine levels for detailed representations on subsets. Our algorithm is based on a dynamic process we have developed called diffusion condensation, that computes a manifold-intrinsic diffusion space on the original data before slowly condensing data points towards local centers of gravity to form natural, data-driven groupings across multiple granularities.  While this may sound computationally inefficient, we show that we are able to perform these calculations as well as visualize and cluster the data significantly faster than \u201csingle-scale\u201d visualization techniques like tSNE, UMAP or PHATE, allowing the analysis of millions of cells within minutes.  When combined with other computational algorithms for high dimensional data analysis, such as MELD, DREMI and TrajcetoryNet, Multiscale PHATE is able to provide deep and detailed insights in biological processes.\n\nInstallation\n------------\n\nMultiscale PHATE is available on `pip`. Install by running the following in a terminal:\n\n```\npip install --user git+https://github.com/KrishnaswamyLab/Multiscale_PHATE\n```\n\nQuick Start\n-----------\n\n```\nimport multiscale_phate\nmp_op = multiscale_phate.Multiscale_PHATE()\nmp_embedding, mp_clusters, mp_sizes, tree = mp_op.fit_transform(X)\n\n# Plot optimal visualization\nscprep.plot.scatter2d(mp_embedding, s = mp_sizes, c = mp_clusters,\n                      fontsize=16, ticks=False,label_prefix=\"Multiscale PHATE\", figsize=(16,12))\n```\n\nGuided Tutorial\n-----------\n\nFor more details on using Multiscale PHATE, see our [guided tutorial](tutorial/10X_pbmc.ipynb) using 10X's public PBMC4k dataset.\n\n\n",
    "bugtrack_url": null,
    "license": "GNU General Public License Version 3",
    "summary": "multiscale_phate",
    "version": "0.0",
    "project_urls": {
        "Download": "https://github.com/KrishnaswamyLab/Multiscale_PHATE/archive/v0.0.tar.gz",
        "Homepage": "https://github.com/KrishnaswamyLab/Multiscale_PHATE"
    },
    "split_keywords": [
        "big-data",
        "computational-biology",
        "dimensionality-reduction",
        "visualization",
        "embedding",
        "manifold-learning"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f15ecf74348a31d5da281477a730b99e9e8b4622c1786a7108f28c9c1fec3f1d",
                "md5": "4b8079e58b8f83e8ba53cdf7aff4f678",
                "sha256": "3cb46ef9df4061b1dc6d3908ef7149ca209fd3f2cf475ebfb93cfd084e3faed2"
            },
            "downloads": -1,
            "filename": "multiscale_phate-0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4b8079e58b8f83e8ba53cdf7aff4f678",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 28627,
            "upload_time": "2020-11-18T22:46:52",
            "upload_time_iso_8601": "2020-11-18T22:46:52.974541Z",
            "url": "https://files.pythonhosted.org/packages/f1/5e/cf74348a31d5da281477a730b99e9e8b4622c1786a7108f28c9c1fec3f1d/multiscale_phate-0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "82309f6a47268209197fad84c125802942d77b608bad0c8df4864ddeec484e5f",
                "md5": "c70bdf822c0534a8baeca4ed1416d4ee",
                "sha256": "09a32aa483768ec235679146adeb6c5ca3d4de43b69001a4349847a503813cc0"
            },
            "downloads": -1,
            "filename": "multiscale_phate-0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c70bdf822c0534a8baeca4ed1416d4ee",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 27066,
            "upload_time": "2020-11-18T22:46:53",
            "upload_time_iso_8601": "2020-11-18T22:46:53.965884Z",
            "url": "https://files.pythonhosted.org/packages/82/30/9f6a47268209197fad84c125802942d77b608bad0c8df4864ddeec484e5f/multiscale_phate-0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2020-11-18 22:46:53",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "KrishnaswamyLab",
    "github_project": "Multiscale_PHATE",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "numpy",
            "specs": []
        },
        {
            "name": "scipy",
            "specs": []
        },
        {
            "name": "graphtools",
            "specs": []
        },
        {
            "name": "phate",
            "specs": []
        },
        {
            "name": "scikit-learn",
            "specs": []
        },
        {
            "name": "tasklogger",
            "specs": []
        },
        {
            "name": "joblib",
            "specs": []
        }
    ],
    "lcname": "multiscale-phate"
}
        
Elapsed time: 0.28573s