CellRank - Probabilistic Fate Mapping using RNA Velocity¶
CellRank is a toolkit to uncover cellular dynamics based on scRNA-seq data with RNA velocity annotation, see [Manno18] and [Bergen20]. CellRank models cellular dynamics as a Markov chain, where transition probabilities are computed based on RNA velocity and transcriptomic similarity, taking into account uncertainty in the velocities and the stochastic nature of cell fate decisions. The Markov chain is coarse-grained into a set of macrostates which represent initial & terminal states as well as transient intermediate states. For each transient cell, i.e. for each cell that’s not assigned to a terminal state, we then compute its fate probability of it reaching any of the terminal states. We show an example of such a fate map in the figure above, which has been computed using the data of [Panc19].
This release includes:
Fix not vendorizing correct
msmtoolswhich sometimes cause densification of a sparse matrix..
Bump scanpy version requirement to 1.6 to fix plotting PR 444.
cellrank.tl.lineage_drivers()computes p-values for the identified driver genes now, using either a Fisher-transformation to approximate the distribution of the test statistic under the null hypothesis or an exact, permutation based test. Corrects for multiple-testing.
cellrank.tl.kernels.VelocityKernel.compute_transition_matrix()now allows different metrics to be used to compare velocity vectors with expression-differences across neighboring cells. We add cosine-correlation and dot-product schemes and we allow the user to input their own scheme. It has been shown recently by [Li2020] that the choice of metric can lead to slightly different results. Users can now also supply their own scheme as long as it follows the signature of
CellRank’s key applications¶
compute initial & terminal as well as intermediate macrostates of your biological system
infer fate probabilities towards the terminal states for each individual cell
visualize gene expression trends along specific linegeages while accounting for the continous nature of fate determination
identify potential driver genes for each identified cellular trajectory
Why is it called “CellRank”?¶
CellRank does not rank cells, we gave the package this name because just like Google’s original PageRank algorithm, it works with Markov chains to aggregate relationships between individual objects (cells vs. websites) to learn about more global properties of the underlying dynamics (initial & terminal states and fate probabilities vs. website relevance).