scmorph is a Python library to process CellPainting or any morphological data. It unlocks single-cell data to model heterogenity.
scmorph differs from the popular PyCytominer package in the following ways:
- Single-cell: Enables efficient analysis of single-cell data
- Batch-correction: Natively integrates a batch correction technique widely used for scRNA-seq.
- Enhanced feature selection: Removes non-linearly correlated features using an adapted Chatterjee correlation coefficient, which results in fewer, more meaningful features.
- Enhanced aggregation: Offers statistically robust aggregation methods to derive meaningful distances to a control sample.
It provides tools to make single-cell data analysis easier and more reproducible. For example, it can be used to:
- Load in data from csv files, e.g. generated by CellProfiler.
- Remove batch effects to compare conditions across batches.
- QC both cells and images.
- Remove redundant features based on correlation.
- Reduce dimensionality to gain quick intuition about the data's spread.
- Perform statistically robust aggregate analysis to quickly identify hits.
Install scmorph via pip or conda:
pip install scmorph
# or:
conda install -c conda-forge scmorph
For documentation on the usage of scmorph, please see https://scmorph.readthedocs.io/en/latest/