2012-04-19 4 views
2

У меня есть матрица коэффициентов корреляции R и матрица коэффициентов парциальной корреляции Rp, то как я могу нарисовать гауссову графическую модель в R?Как нарисовать гауссовскую графическую модель в R

Было бы лучше, если бы рекомендовал введение некоторых книг о графической модели Гаусса, действительно, я не знаю, что это такое, но первое, что мне нужно сделать, - это вытащить его. Большое спасибо!

#the Correlation coefficient matrix 
R=c(1,0.55,0.55,0.41,0.39,0.55,1,0.61,0.49,0.44,0.55,0.61,1,0.71, 
0.66,0.41,0.49,0.71,1,0.61,0.39,0.44,0.66,0.61,1) 
dim(R)=c(5,5) 

#the Partial correlation coefficient matrix 
library("corpcor") 
Rp=cor2pcor(R) 

Тогда как я мог бы нарисовать графическую модель Гаусса?

ответ

3

Если вы хотите построить соответствующий график, вы можете использовать пакет igraph.

library(igraph) 
g <- graph.adjacency(abs(Rp)>.1, mode="undirected", diag=FALSE) 
plot(g, layout=layout.fruchterman.reingold) 
+0

Почему abs (Rp)>. 1? – PepsiCo

+0

В противном случае у вас всегда будет полный график, который довольно неинформативен. В качестве альтернативы можно использовать более слабый цвет, когда корреляция низка, как в ответе Саши. –

2

Я не знаком с термином «гауссовой графической модели», хотя я чувствую, что должно быть (я буду читать на нем, спасибо).

Но для визуализации (частичных) корреляционных матриц вы можете использовать пакет qgraph, который предназначен для этого. Например:

library("qgraph") 
qgraph(round(Rp,5),edge.labels=TRUE) 

enter image description here

Вычисление частичных корреляций строятся с аргументом:

qgraph(round(R,5),edge.labels=TRUE,graph="concentration") 

дает тот же результат.

+0

Мне не удалось получить пакет «qgraph»: Ошибка в library.dynam (lib, package, package.lib): вам нужен DLL'plyr ' – PepsiCo

+0

. Установка через CRAN также должна автоматически устанавливать 'plyr'. 'Install.packages ("qgraph", DEP = TRUE),'. Убедитесь, что ваша версия R обновлена ​​(2.15). –