PHATE
Project description
PHATE (Potential of Heat-diffusion for Affinity-based Trajectory Embedding) is a tool for visualizing high dimensional data. PHATE uses a novel conceptual framework for learning and visualizing the manifold to preserve both local and global distances.
To see how PHATE can be applied to datasets such as facial images and single-cell data from human embryonic stem cells, check out our Nature Biotechnology publication.
PHATE has been implemented in Python >=3.5, R and MATLAB.
Python installation and dependencies
Installation with pip
The Python version of PHATE can be installed using:
pip install --user phate
Installation from source
The Python version of PHATE can be installed from GitHub by running the following from a terminal:
git clone --recursive git://github.com/KrishnaswamyLab/PHATE.git cd Python python setup.py install --user
Quick Start
If you have loaded a data matrix data in Python (cells on rows, genes on columns) you can run PHATE as follows:
import phate phate_op = phate.PHATE() data_phate = phate_op.fit_transform(data)
PHATE accepts the following data types: numpy.array, scipy.spmatrix, pandas.DataFrame and anndata.AnnData.
Usage
PHATE has been implemented with an API that should be familiar to those with experience using scikit-learn. The core of the PHATE package is the PHATE class which is a subclass of sklearn.base.BaseEstimator. To get started, import phate and instantiate a phate.PHATE() object. Just like most sklearn estimators, PHATE() objects have both fit() and fit_transform() methods. For more information, check out our notebook below.
If you want to try running our test script on a DLA fractal tree, run the following in a Python interpreter:
import phate import scprep tree_data, tree_clusters = phate.tree.gen_dla() phate_operator = phate.PHATE(k=15, t=100) tree_phate = phate_operator.fit_transform(tree_data) scprep.plot.scatter2d(tree_phate, c=tree_clusters) phate_operator.set_params(n_components=3) tree_phate = phate_operator.transform() scprep.plot.rotate_scatter3d(tree_phate, c=tree_clusters)
Jupyter Notebooks
A demo on PHATE usage and visualization for single cell RNA-seq data can be found in this Jupyter notebook. A second tutorial is available here which works with the artificial tree shown above in more detail. You can also access interactive versions of these tutorials on Google Colaboratory: single cell RNA seq, artificial tree.
Help
If you have any questions or require assistance using PHATE, please contact us at https://krishnaswamylab.org/get-help
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file phate-1.0.0.tar.gz
.
File metadata
- Download URL: phate-1.0.0.tar.gz
- Upload date:
- Size: 20.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.5.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f4570dad9521fc30d8185ba50417dc447e878569e54c98af734d03be0860418 |
|
MD5 | eea0d685e330df196dac079b7c015468 |
|
BLAKE2b-256 | 1c93815a5b5eaae444a171c39d00210bbc0a393c8d02f96494c0e3190aff3f1f |
File details
Details for the file phate-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: phate-1.0.0-py3-none-any.whl
- Upload date:
- Size: 22.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.5.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 78173ce01ac0ea6245b2bee17b036cc33a2d72c1710517b9e6b5d8428062851e |
|
MD5 | 2d7abfea9b96c3100b44995f5e50ee4e |
|
BLAKE2b-256 | f7769344c6281eccf4ee7daa95aef012cb957ded292bf1f436236f44276a1b69 |