analysis of multiple batches and multiple treatment conditions in scRNA-seq
1
0
Entering edit mode
Bogdan ▴ 640
@bogdan-2367
Last seen 4 days ago
Palo Alto, CA, USA

for example, shall we have 2 batches of scRNA-seq data of 2 conditions :

WT_batch1, WT_batch2, DISEASE_batch1, DISEASE_batch2,

would the following approach be statistically legitimate in order to account/correct for the batch effect :

1 -- use CCA (in seurat) or MNNcorrect (in scran) to account for the batch effects

2 -- followed by TSNE and networkbasedclustering, in order to place correctly the cells into CLUSTERS

3 -- and perform differential expression (with wilcoxon test, limma, edgeR, etc) between the CLUSTERS

We know that CCA or MNNcorrect only place the cells in more "correct" clusters after batch correction, and do NOT provide a batch - corrected expression value.

In this case, considering for instance cluster_0, could we combine :

a -- the matrix of cells : normalizedexpression in cluster-0 in WTbatch1,

with the matrix of cells : normalizedexpresion in cluster-0 in WTbatch2

(let's call this matrix WTbatch1batch2)

b -- the matrix of cells : normalizedexpression in cluster-0 in DISEASEbatch1,

with the matrix of cells : normalizedexpresion in cluster-0 in DISEASEbatch2

(let's call this matrix DISEASEbatch1batch2)

c -- and use limma or edgeR or DESeq2 on WTbatch1batch2 versus DISEASEbatch1batch2 in order to get the differential expression

we would prefer to combine the batches into a matrix WTbatch1batch2 and respectively, into a matrix DISEASEbatch1batch2, as, sometimes, the number of cells in a cluster may be small (ie less than 200 cells)

or if there is any other approach that you'd recommend ..

thank you,

bogdan

limma deseq2 edger scRNAseq combat • 986 views
0
Entering edit mode

Is there a question here?

0
Entering edit mode

Hi Aaron, great to hear from you. It would be awesome to have your opinion on the following question please :

after TSNE, considering for instance cluster_0, could we combine :

a -- the matrix of cells w/ normalizedexpression in cluster-0 in WTbatch1,

with the matrix of cells w/ normalizedexpression in cluster-0 in WTbatch2

(let's call this matrix WT_batch1_batch2)

b -- the matrix of cells w/ normalizedexpression in cluster-0 in DISEASEbatch1,

with the matrix of cells w/ normalizedexpresion in cluster-0 in DISEASEbatch2

(let's call this matrix DISEASE_batch1_batch2)

c -- and use limma or edgeR on WTbatch1batch2 versus DISEASEbatch1batch2 in order to get the differential expression ?

thank you,

bogdan

0
Entering edit mode

aiming to place these 2 piece of R code together for 10x Genomics scRNA-seq. Shall you have any comments, please let me know. thank you a lot !

0
Entering edit mode
@andrew_mcdavid-11488
Last seen 8 weeks ago
United States

If batch is indeed crossed with condition, as the OP seemed to indicate, this suggests the model of the form

~ cluster/condition + batch:cluster


where cluster is factor that identifies the cluster assignment, derived however desired. You could fit this model in any number of ways, including MAST. The main gotcha with this is that "expression",which implicitly is appearing on the left-hand side of the regression was also used in some complicated fashion to define the "cluster" variable on the right-hand side. This means you can't trust any p-value. Don't even attempt to report them.

0
Entering edit mode

Hi Andrew,

I have a 10X scRNA-seq dataset where there are 4 replicates for each of the 2 conditions, but the samples were processed in 3 days - 1 control sample on the first day, 1 control and 2 treated samples on the second day, and 2 contorl and 2 treated samples on the third day. What is the best way to model this for differential gene expression analysis?

Thanks, Joyce

0
Entering edit mode