How do you normalize a heat map to the control?
1
0
Entering edit mode
21 months ago
mgranada3 ▴ 30

I have been working with gene expression data and I have created this heat map. It is composed of 3 treatments and 1 control. I keep being told that I need to "normalize my heat map against the control." In which case (to my understanding), my heatmap would then show 3 conditions instead of 4. I was told on a previous post that I can calculate this manually, "manually calculate the log(treatment/control) values and use it as the the input matrix for pheatmap()." I have 80 samples total. Can anyone clarify or point me in the right direction? I am using DEseq2 in R.

enter image description here

heatmap RNA-seq DESeq2 R pheatmap • 1.6k views
ADD COMMENT
0
Entering edit mode
21 months ago
Trivas ★ 1.7k

Unless your samples are paired, the best you can do is to take the average of all of your control samples on a per gene basis, then do exactly what you were told and calculate log(treatment/control). It would be easiest to create a new dataframe/matrix with these new adjusted values and send that through pheatmap. I would keep your control samples in the heatmap and represent them as black or gray, since they should equal 0 after log-transformation.

ADD COMMENT
0
Entering edit mode

So for gene x, in one condition the count is 15392, and in my control the count is 6724. Log(15392/6724) = 0.36 and I would just plot all these values? Is it possible to take the LFC out of the DESeq2 results file and plot that on a heat map? These values have technically already been normalized against the control.

ADD REPLY
1
Entering edit mode

I would probably use the normalized counts from DESeq2 instead of raw counts but yeah that's exactly what you would do (maybe use log2, instead). You could also play around with pheatmap to normalize across rows (basically, use pheatmap to calculate z-scores) for visualization purposes.

ADD REPLY

Login before adding your answer.

Traffic: 1693 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