Skip to main content
Latest PyPi version Latest CRAN version Travis CI Build Read the Docs bioRxiv Preprint Twitter GitHub stars

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 preprint on BioRxiv.

Kevin R. Moon, David van Dijk, Zheng Wang, et al. Visualizing Transitions and Structure for Biological Data Exploration. 2018. BioRxiv.

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
tree_data, tree_clusters = phate.tree.gen_dla()
phate_operator = phate.PHATE(k=15, t=100)
tree_phate = phate_operator.fit_transform(tree_data)
phate.plot.scatter2d(phate_operator, c=tree_clusters) # or phate.plot.scatter2d(tree_phate, c=tree_clusters)
phate.plot.rotate_scatter3d(phate_operator, 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

Metadata

Release files for phate 0.4.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for phate 0.4.5
File Size Uploaded
phate-0.4.5.tar.gz 19.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for phate 0.4.5
File Interpreter ABI Platform
phate-0.4.5-py3-none-any.whl Python 3 none any Details

Total release size: 41.6 kB

Release files / phate-0.4.5.tar.gz

Download URL phate-0.4.5.tar.gz
Size 19.7 kB
Tags Source
SHA-256 checksum
How to use checksums
99c94821d15d79c53a9f7cd11c34903089e814d76d52c054d19e577afcff74e6
BLAKE2b-256 checksum
How to use checksums
66c276eb87b1fa1b109a93fe0f9cfa90ce2d3eb8408a9460270a4372c10d62ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.5.6

Release files / phate-0.4.5-py3-none-any.whl

Download URL phate-0.4.5-py3-none-any.whl
Size 21.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e1e9e58a32380f5e36dbdfd46ae268b9d56240e5f797efe84b6ff1075b6747c6
BLAKE2b-256 checksum
How to use checksums
00f02dbd89b9540153f1a209111cdf0ba14b77485869be8fb963b033330379ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.5.6

Release history Release notifications | RSS feed

2.0.0

2 release files

1.0.11

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.0

2 release files

This release

0.4.5 This release

2 release files

0.4.4

5 release files

0.4.2

5 release files

0.4.1

5 release files

0.4.0

5 release files

0.3.1

5 release files

0.3.0

5 release files

0.2.10

2 release files

0.2.9

1 release file

0.2.8.5

1 release file

0.2.8.3

1 release file

0.2.8.2

1 release file

0.2.8.1

1 release file

0.2.8

1 release file

0.2.7.4

1 release file

0.2.7.3

1 release file

0.2.7.2

1 release file

0.2.7

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page