L’heatmap è una rappresentazione grafica a matrice che utilizza colori per visualizzare i valori di un set di dati. Nell’analisi dell’espressione genica, l’heatmap è uno strumento potente per visualizzare i pattern di espressione di più geni in diversi campioni simultaneamente.

Come funziona:

Clustering gerarchico:

Spesso, gli heatmap vengono combinati con il clustering gerarchico, un metodo statistico che raggruppa geni e/o campioni con pattern di espressione simili.

Vantaggi:

13.1 FC=1 & padj=0.01

Mostra il codice R
hm <- function(res, pd = 0.001, lFC = 1, gene = FALSE) {
  resSubset <- subset(res, padj < pd & abs(log2FoldChange) > lFC)
  resSubset <- resSubset[order(resSubset$log2FoldChange, decreasing = TRUE), ]
  genesSelected <- rownames(resSubset)
  heatData <- assay(dds)[genesSelected, ]
  my_sample_col <- as.data.frame(cbind(rownames(colData(dds)), colData(dds)["infection"]))
  colnames(my_sample_col) <- c("name", "sampletype")
  rownames(my_sample_col) <- my_sample_col$name
  my_sample_col$name <- NULL
  pheatmap(heatData, annotation_col = my_sample_col, cellwidth = 10, scale = "row", cluster_rows = TRUE, cluster_cols = TRUE, show_rownames = gene, main = paste0("DE genes, centered (FC=", lFC, ", pajd=", pd, ")"), cutree_rows = 2, cutree_cols = 2)
}

hm(res, 0.01, 1)

13.2 FC=1 & padj=0.001

Mostra il codice R
hm(res, 0.001, 1)

13.3 FC=2 & padj=0.01 & gene names

Mostra il codice R
hm(res, 0.01, 2, TRUE)

13.4 FC=2 & padj=0.001 & gene names

Mostra il codice R
hm(res, 0.001, 2, TRUE)

Interpretazione:

  • Intensità del colore: Indica il livello di espressione del gene nel campione.
  • Dendrogramma: Mostra le relazioni gerarchiche tra geni (righe) e campioni (colonne).
  • Pattern: Cerca blocchi di colore, che indicano gruppi di geni co-espressi o gruppi di campioni con profili simili.