HEATMAP – ovvero come non affogare in un oceano di numeri

 Bioinformatica, Excel, heat map, Senza categoria, Statistica  Commenti disabilitati su HEATMAP – ovvero come non affogare in un oceano di numeri
Mar 102010
 

 

Quando occorre valutare a colpo d’occhio l’andamento di centinaia o migliaia o anche milioni di dati è utile l’uso dei grafici cosidetti ‘heat-map’. In sostanza i grafici heat-map sostituiscono i numeri con diversi colori che differiscono di tonalità e/o di intensità a seconda dei valori stessi.

Per esempio la tabellina pitagorica trasformata in heat-map potrebbe apparire così:

Shot0001

La heat-map mostra subito che la tabella è simmetrica e che i valori variano in modo perfettamente graduale.

Cosa succede se alteriamo 2 dati della tabella? Osservando i numeri è piuttosto faticoso rendersi conto delle alterazioni mentre la heat-map le individua all’istante.

Shot0002

Nel campo della Bioinformatica l’heat-map è estremamente utile in quanto consente di controllare a colpo d’occhio l’espressione di un numero impressionante geni in un gran numero di soggetti.

Questa ad es. è una heat-map che rappresenta l’espressione di 36 geni (si tratta in effetti di microRNA) di 33 soggetti.

Shot0003

E’ evidente che vi sono due gruppi di soggetti contrapposti (a destra e a sinistra) ed allo stesso tempo vi sono due gruppi di microRNA contrapposti (in alto ed in basso).

Questo è abbastanza chiaro e se l’intenzione era solo quella di capire cosa vuol dire heat-map, quanto abbiamo visto è sufficiente. Per chi invece volesse anche crearle le heat-map, non solo comprenderne il significato, i problemi iniziano adesso. A dire il vero esistono già diversi programmi che generano heat-map. Ma quasi sempre si tratta di programmi dedicati a specifiche applicazioni, spesso molto costosi e con procedure poco flessibili.

Per evitare qualsiasi limitazione ho voluto creare una semplice applicazione in Excel. Quella attuale gira su Excel 64bit versione Office 2010, ma dovrebbe girare anche su altre versioni. E’ possibile ridimensionare ed esportare la heatmap con facilità su diversi documenti (es. Word o PowerPoint). Ma poiché le macro possono contenere virus pericolosi, occorre che nel vostro Excel le macro siano abilitate o che voi diate il consenso ad aprile il file. Il file è scaricabile da: HeatMap – Diaz – v022

Per creare la heat-map occorre:

1) Avere i dati in un foglio di qualsiasi file Excel aperto, purché il nome del foglio sia unico.

2) Che i dati non occupino le prime due rige del foglio.

3) Selezionare il blocco di celle del foglio contenente i dati di cui ci interessa creare la heatmap (al solito modo, con il mouse). I dati – come anche in altre applicazioni – devono avere le variabili (i geni) nelle righe ed i casi (soggetti) nelle colonne. Inoltre il blocco selezionato può contenere righe e colonne vuote. In corrispondenza di queste la heatmap creerà degli spazi utili ad es. per separare gruppi di geni o di soggetti.

Shot0004

Il foglio può anche contenere altri dati, grafici, ecc. sopra, sotto o a destra o a sinistra del blocco dei dati di cui vogliamo la heatmap. Solo le due righe sopra il blocco selezionato potranno essere sovrascritte da alcuni titoli.

A questo punto:

4) Passare al foglio Menù (vedi schermata sotto) del file di Excel che contiene il programma, stando attenti a non de-selezionare il blocco del foglio dei dati. Per passare da un file all’altro è molto utile la combinazione dei tasti <Ctrl>Tab.

4) Scrivere nel text box con sfondo giallo il nome del folglio di Excel contenente il blocco dei dati precedentemente selezionati. Il nome del foglio deve essere unico tra i nomi di tutti i fogli dei files di Excel aperti.

5) Calcolare le statistiche [statistics] per conoscere i valori di media, media, percentili, ecc. dei dati (di tutti complessivamente).

6) Settare il numero di decimali (0-4) e la grandezza dei caratteri (8-12) dell’output.

7) Considerare se e come i dati devono essere trasformati [transformations].

Vi sono 5 opzioni:

  • nessuna trasformazione
  • dati centrati sulla media (consigliata)
  • dati standardizzati (centrati sulla media e normalizzati sulla DS) (consigliata)
  • dati centrati sulla mediana
  • dati rapportati alla media

Queste trasformazioni hanno diversi significati che è impossibile discutere ora. I dati trasformati compariranno in nuove colonne formate ex-novo a sinistra del blocco dei dati, per cui tutti il contenuto del foglio resterà intatto, ma spostato verso destra di qualche colonna. Attenzione però: Excel non consente di inserire nuove colonne se l’ultima colonna a destra del foglio contiene dati. Questo problema può capitare con le versioni di Excel limitate a 255 colonne. Nelle ultime colonne potrebbero non esserci dati, ma solo linee (cornici di celle) o colori o semplicemente formati estesi su una intera riga. Se il programma dovesse dare un messaggio di impossibilità a creare nuove colonne, basta cancellare il contenuto del maggior numero di colonne all’estrema sinistra. Evitato o risolto questo problema, possiamo dare un’occhiata ai dati trasformati, ma non è necessario. Comunque se lo facciamo dobbiamo stare attenti a non alterare in alcun modo la selezione che ora è sui dati trasformati = nessun click sul foglio dei dati! Altrimenti dobbiamo ri-selezionare manualmente i dati trasformati.

8) Dopo la trasformazione dobbiamo ricalcolare le statistiche [statistics] per conoscere i nuovi valori di media, media, percentili, ecc.

9) Se in base alle statistiche la trasformazione operata non sembra appropriata, possiamo eliminare dal foglio contenente i dati tutte le colonne aggiunte con i dati trasformati e ricominciare dal punto 3.

10) Se invece la trasformazione è approprita possiamo proseguire il procedimento indicando il range dei valori che saranno rappresentati dalle diverse intensità dei due colori [lower threshold] [upper threshold]

11) Infine selezioniamo la combinazione di colori, [green-red, o altre].

12) Verrà così creata la heatmap. La heatmap sarà costituita da tanti quadratini colorati (‘shapes’ di Excel) posti all’interno delle celle. Il vantaggio sarà che possiamo ridimensionare l’heatmap semplicemente variando la larghezza e/o l’altezza delle righe. Possiamo anche fare copia e incolla, ecc.

Ovviamente, la creazione della heatmap richiederà tempi diversi a seconda delle prestazioni del computer e del numero di geni e di soggetti (da pochi secondi a molti minuti). Inizialmente provate con piccoli blocchi di dati.

Perché la heatmap sia visivamente efficace occorre anche che i dati siano disposti in modo da rappresentare gruppi di geni e di soggetti il più possibile simili tra loro, in modo da produrre aree di colore le più omogenee possibili. Fare questo non è impresa semplicissima. Se non abbiamo altre indicazioni (come ad. es gruppi funzionali di geni: geni dell’immunità innata, dell’immunità adattativa, del ciclo cellulare, oncogeni, ecc.; come anche gruppi di soggeti: pazienti e controlli), è necessario ricorrere ad una Cluster analysis. L’ordine dei dati in Excel dovrà corrispondere all’ordinamento ottenuto dalla Cluster analysis.

Altre indicazioni sono presenti nel foglio del Menu.

Buon divertimento.

Giacomo Diaz
gdiaz@unica.it

contatti | accessibilità Università degli Studi di Cagliari
C.F.: 80019600925 - P.I.: 00443370929
note legali | privacy