CellRank 1.5.0 (2021-09-13)#

Features#

  • Add threshold to cellrank.external.kernels.WOTKernel.compute_transition_matrix() to increase sparsity and speed up cellrank.tl.estimators.GPCCA. #696

  • Allow using columns from anndata.AnnData.var as gene symbols for some plotting functions. #726

  • Completely refactor cellrank.tl.estimators. This includes the following changes:

    • define less coupled, more extensible class hierarchy.

    • follow more closely fit/predict paradigm of sklearn, see e.g. cellrank.tl.estimators.GPCCA.fit() and cellrank.tl.estimators.GPCCA.predict().

    • make estimators implicitly maintain a more consistent state.

    • remove plotting of Schur vectors and eigenvectors in an embedding.

    • remove cell-cycle warning for terminal states.

    • remove is_irreducible, recurrent_classes and transient_classes properties.

    • remove optional irreducibility check from cellrank.tl.estimators.GPCCA.compute_absorption_probabilities()

    • normalize estimator attribute names and key names when writing to anndata.AnnData.

    • allow estimators to serialize self from/to anndata.AnnData, see cellrank.tl.estimators.BaseEstimator.from_adata() or cellrank.tl.estimators.BaseEstimator.to_adata().

    • allow estimators to be saved to a file without it anndata.AnnData.

    • improve docstrings in various places.

    • write lineage drivers to anndata.AnnData.varm instead of anndata.AnnData.var.

    • fix various corner cases when solving linear systems (e.g. only 1 variable).

    In addition, add cellrank.tl.Lineage.from_adata() to allow easy reconstruction of lineage objects. #727

Bugfixes#

  • Fix towncrier release generation CI. #701

  • Update towncrier to display development release notes. #709

  • Restricts computation of embedding projection to kNN based kernels. #733

  • Fix cellrank.external.kernels.WOTKernel.compute_transition_matrix() silently ignoring unexpected kwargs. #737

  • Use actual number of nearest neighbors in cellrank.tl.kernels.PseudotimeKernel when using hard threshold scheme. #738

  • Fix cellrank.pl.cluster_lineage() sometimes reusing the same ax. #742

Deprecations (in next major release)#

  • Deprecate cellrank.tl, including the high level API and rename cellrank.ul.models to cellrank.models. #695

Miscellaneous#

  • Fix many test warnings. #704

  • Speed-up testing by not using stochastic mode in cellrank.kernels.VelocityKernel where not necessary. #705

  • Enable tox in CI. #713

  • Update deployment CI and CONTRIBUTING.rst based on a new branching structure. #725

  • Add Python 3.9 CI testing. #730

Documentation#

  • Add Google Colab links for tutorials. #707

  • Allow towncrier to generate bleeding-edge development notes. #712

  • Fix docstrings and use typed returns. #743