2012-09-11 20 views
5

Ho usato il pacchetto MixOmics in R per due matrici (analisi di correlazione canonica) e ho una matrice di correlazione risultante. Mi piacerebbe costruire una rete di correlazione dal risultato ottenuto. Prima pensavo di usare il pacchetto di analisi della correlazione del gene set ma non so come installarlo e non ci sono fonti su Internet per installarlo in R (http://www.biostat.wisc.edu/~kendzior/GSCA /).matrice di correlazione per costruire reti

Inoltre potresti suggerire quali altri pacchetti potrei usare per costruire reti con matrice di correlazione come input ?? Ho pensato a Rgraphviz ma non so se è possibile.

risposta

6

copia questa risposta soprattutto dalla mia precedente risposta a https://stackoverflow.com/a/7600901/567015

Il pacchetto qgraph è principalmente destinato a visualizzare matrici di correlazione come una rete. Questo traccerà le variabili come nodi e correlazioni come spigoli che connettono i nodi. I bordi verdi indicano correlazioni positive e i bordi rossi indicano correlazioni negative. Più ampi e saturi sono i bordi, più forte è la correlazione assoluta.

Ad esempio (questo è il primo esempio della pagina di aiuto), il codice seguente traccerà la matrice di correlazione di un set di dati di 240 variabili.

library("qgraph") 
data(big5) 
data(big5groups) 
qgraph(cor(big5),minimum=0.25,cut=0.4,vsize=2,groups=big5groups,legend=TRUE,borders=FALSE) 
title("Big 5 correlations",line=-2,cex.main=2) 

enter image description here

È anche possibile raggruppare nodi fortemente correlati tra loro (usa Fruchterman-Reingold) che crea piuttosto una chiara immagine di ciò che la struttura del vostro matrice di correlazione si presenta come:

enter image description here

Per una introduzione completa dai un'occhiata a http://www.jstatsoft.org/v48/i04/paper

3

Si potrebbe anche voler dare un'occhiata ai pacchetti network e sna su CRAN. Entrambi includono strumenti per convertire una matrice in un oggetto dati di rete.

Problemi correlati