Question: Loupe Browser (v7.0+) enables differential expression within cell types and between experimental conditions with multi-sample comparison (aka pseudo-bulk). How does the differential expression calculation normalize for different cell counts across input samples?
Answer: To test for differences in mean expression between groups of cells within a cell type, Loupe Browser first reads the entire gene expression count matrices from Cell Ranger. For every cluster (cell type), a new matrix is generated in which each column is the sum of all barcodes in that sample within the selected cluster (cell type). Loupe Browser then applies the exact negative binomial test proposed by the authors of the sSeq method (Yu, Huber, & Vitek, 2013) to the condensed sample matrices to test for significant differences.
Loupe Browser's implementation differs slightly from the sSeq paper: the size factors are calculated using total UMI count per sample instead of using DESeq's geometric mean-based definition of library size. As with sSeq, normalization is implicit in that the per-sample size factor parameter is incorporated as a factor in the exact and asymptotic probability calculations.