PyPi Doc Badge Build Badge codecov Badge License black

scFates - a python package for advanced pseudotime and bifurcation analysis

scFates is a scalable Python suite for tree inference and advanced pseudotime analysis.

The related work is now available in Bioinformatics:

Louis Faure, Ruslan Soldatov, Peter V. Kharchenko, Igor Adameyko
scFates: a scalable python package for advanced pseudotime and bifurcation analysis from single cell data
Bioinformatics, btac746; doi: https://doi.org/10.1093/bioinformatics/btac746

It initially is a translation from crestree, a R package developed for the analysis of neural crest fates during murine embryonic development (Soldatov et al., Science, 2019), and used in another study of neural crest derived sensory neurons (Faure et al., Nature Communications, 2020).

The initial R version included a tree inference approach inspired from SimplePPT, this version now adds the choice of using ElPiGraph, another method for principal graph learning (Albergante et al., Entropy, 2020). scFates is fully compatible with scanpy, and contains GPU-accelerated functions for faster and scalable inference.

Analysis key steps

  • learn a principal tree on the space of your choice (gene expression, PCA, diffusion, …).

  • obtain a pseudotime value upon selection of a root (or two roots).

  • test and fit features significantly changing along the tree, cluster them.

  • perform differential expression between branches.

  • identify branch-specific early activating features and probe their correlations prior to bifurcation.