rhondabacher / SCnorm

Normalization for single cell RNA-seq data
47 stars 9 forks source link

Normalization for DE #30

Closed ktroule closed 4 years ago

ktroule commented 4 years ago

Hi.

I'm tryin to use scNorm to normalize scRNA data for dowstream analyses with limma to retrieve diferentially expresses genes.

Currently I'm playing with a matrix of 109 cells (~80 belong to condition 1, ~30 belong to condition 2) and 23600 genes.

Code running, deg.annot$cell is a vector of length 109 that includes either: "condition_1" or "condition_2".

DataNorm <- SCnorm(Data = as.matrix(counts.deg),
                   Conditions = deg.annot$cell,
                   PrintProgressPlots = TRUE,
                   FilterCellNum = 10,
                   NCores=3,
                   reportSF = FALSE,
                   useZerosToScale=TRUE)

What strikes me is that while the code is running it indicates:

19439 genes in condition condition_1 will not be included in the normalization due to the specified filter criteria.
15327 genes in condition condition_2 will not be included in the normalization due to the specified filter criteria.

If I'm not understanding wrong for condition 1 only ~4000 genes will be normalized while for condition 2 about ~9000 while be normalized.

Can I still perform a differential expression analysis (i.e. limma, edgeR) with the output matrix? I'm asking this as not all genes are being normalized and in an extreme case the ~4000 genes from condition 1 might not be included in the ~9000 genes from condition 2.

There is something that I might not be understanding as I don't see fair to perform DE between two conditions whose genes might be normalized or not.

Thanks for your time.

rhondabacher commented 4 years ago

The gene exclusion is for the within condition normalization. The genes it is excluding are mostly zero values and since normalization does not change zeros there is not anything to normalize. A second scaling step applied across all cells does not exclude genes and should not affect DE. Hope that helps!

ktroule commented 4 years ago

Thanks.