I am planning to use single-cell RNA-seq data as input for the cMonkey biclustering algorithm to infer gene regulatory modules, and I would appreciate some advice on preprocessing strategies.
For normalization and transformation, would it be more appropriate to use SCTransform or the conventional Seurat workflow based on LogNormalize (log-transformed normalized counts) before providing the data to cMonkey?
Specifically, I am unsure whether cMonkey should receive:
- SCTransform Pearson residuals
- Corrected counts from SCTransform; or
- Log-normalized expression values generated using Seurat’s LogNormalize method
Since cMonkey was originally developed for bulk-like expression matrices, I am concerned about how variance stabilization and scaling from single-cell preprocessing might affect biclustering performance and downstream regulatory network inference.
1 answer
In doubt always go for the option where you have most control over your parameters. SCTransform is the conventional Seurat workflow aggregating NormalizeData, FindVariableFeatures and ScaleData. While the 2 firsts give similar output, the scaling methods are different as you mentioned. I have never used cMonkey, but why not use gene regulatory modules tools designed for single cell data, like SCENIC ?
If you still want to used cMonkey with a bulk like strategy, simply aggregate the raw counts of your cells within each sample and normalize by sample size like it is done for differential expression analysis between conditions in single cell.
Log in to answer this question.