Batch effect correction in RNASeq data and plot Dendrograms cluster
1
0
Entering edit mode
4.6 years ago
Ankit ▴ 500

Hi everyone,

I need a help.

I have RNA seq data from multiple labs which I downloaded and processed by myself. I created a featurecounts matrix. Now I have two queries:

  1. Do I need to remove batch effects? If yes can Deseq2 design matrix (~batch +condition) will be sufficient? Or I need to separately do batch removal (eg. I also tried Combat)?

  2. After correcting/ not correcting for batch should I use approach as given in deseq2 or manually for plotting dendrograms cluster.

a). Deseq2 (no batch correction just ~batch +condition) in design matrix which gives dds object. Here I setup some commands as follows:

vsd <- vst(dds, blind=FALSE)
sampleDists <- dist(t(assay(vsd)))
sampleDistshc <- hclust(sampleDists, method = "ward.D")
plot(sampleDistshc)

b). Or I should correct batch: using Combat (sva) then apply:

Tbatchcorrectedmatrix <- t(batchcorrectedmatrix)
sampleDists <- dist(scale(Tbatchcorrectedmatrix), method = "euclidean")
sampleDistshc <- hclust(sampleDists, method = "ward.D")
plot(sampleDistshc)

I also noticed combat output gives me negative values. Why it is so and how to correct it?

Please help.

If possible please correct my R codes.

Thanks

clustering dendrogram RNA-Seq batch-effect • 2.1k views
ADD COMMENT
0
Entering edit mode

Hi i urgently need suggestions for this query. Please help

ADD REPLY
0
Entering edit mode
4.6 years ago

You have to model the batch effect for differential analysis and remove batch effects (comBat or removeBatchEffect() from limma) for plotting/clustering etc.

Combat gives negative values because it regresses out the batch effect, hence the values are modified.

Bottom line is, model for the batch variable wherever possible (DESeq2 design)and remove batch effects if the function doesn't model for batch effects ( like clustering, heatmaps etc )

ADD COMMENT
0
Entering edit mode

Hi. Thanks for suggestion. I did not understand what do you mean by remove batch effects if the function doesn't model for batch effects. How to do that?scripts?

ADD REPLY
0
Entering edit mode

for example, clustering function doesn't account (or model) for batch variation and it clusters whatever values you provide. likewise plotting functions. So in those cases you need to remove batch effects beforehand.

ADD REPLY
0
Entering edit mode

Ok I understood.

So I can use either Deseq2 approach (1) or Manual (2). Which one do you suggest ? Are the commands fine?

ADD REPLY
0
Entering edit mode

Hi

If any suggestions please let me know.

Thanks

ADD REPLY
0
Entering edit mode

I guess you haven’t understood what I’m trying to say. You need to read more. If you are clustering the data, use comBat. If you are performing differential gene expression analysis, use DESeq2.

ADD REPLY

Login before adding your answer.

Traffic: 2476 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6