Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add palantir to the scverse #171

Merged
merged 2 commits into from
May 24, 2024
Merged

Add palantir to the scverse #171

merged 2 commits into from
May 24, 2024

Conversation

katosh
Copy link
Contributor

@katosh katosh commented May 14, 2024

This PR is a submission of palantir to the scverse. Palantir is already part of scanpy.external.tl. However, since scanpy.external seems to be deprecated, and palantir is still being maintained, we would like to make this addition to the scversen to remain part of the ecosystem.

Mandatory

Name of the tool: palantir

Short description: Palantir is an algorithm to align cells along differentiation trajectories. Palantir models differentiation as a stochastic process where stem cells differentiate to terminally differentiated cells by a series of steps through a low dimensional phenotypic manifold. Palantir effectively captures the continuity in cell states and the stochasticity in cell fate determination. Palantir has been designed to work with multidimensional single cell data from diverse technologies such as Mass cytometry and single cell RNA-seq.

How does the package use scverse data structures (please describe in a few sentences): All functions of the main processing pipeline accept anndata objects as input and write all their output into the passed anndata for further processing. Many functions take arguments that specify the .obsm or .layer to use for input and output of the respective processing step.

  • The code is publicly available under an OSI-approved license
  • The package provides versioned releases
  • The package can be installed from a standard registry (e.g. PyPI, conda-forge, bioconda)
  • The package uses automated software tests and runs them via continuous integration (CI)
  • The package provides API documentation via a website or README
  • The package uses scverse datastructures where appropriate (i.e. AnnData, MuData or SpatialData and their modality-specific extensions)
  • I am an author or maintainer of the tool and agree on listing the package on the scverse website

Recommended

  • Please announce this package on scverse communication channels (zulip, discourse, twitter)
  • Please tag the author(s) these announcements. Handles (e.g. @scverse_team) to include are:
    • Twitter:
    • Zulip:
    • Discourse:
    • Mastodon:
  • The package provides tutorials (or "vignettes") that help getting users started quickly
  • The package uses the scverse cookiecutter template.

@ManuSetty

@grst grst self-assigned this May 22, 2024
Copy link
Contributor

@grst grst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @katosh,

thanks for sumitting the package, LGTM!

Beyond the requirements, I have one comment on the tests: From a quick glance it looks like you only test that the functions run through and that the output types match what you expect, but don't provide any guarantees on the output itself. I think it would be great to add some tests for correctness, or at least compare against snapshots of previous results to ensure that results do not change unexpectedly between releases.

@katosh
Copy link
Contributor Author

katosh commented May 22, 2024

@grst thank you for the review!

@ManuSetty we could think about making a version with example results of marrow_sample_scseq_counts.h5ad we use in the tutorial. It's small, processed fast, and the results should be very stable.

@grst grst merged commit 5082626 into scverse:main May 24, 2024
3 checks passed
@katosh
Copy link
Contributor Author

katosh commented May 25, 2024

Thank you for merging @grst! We will continue to work our testing to ensure reliability!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants