Mercurial > hg > camir-aes2014
comparison toolboxes/FullBNT-1.0.7/KPMstats/partial_corr_coef.m @ 0:e9a9cd732c1e tip
first hg version after svn
author | wolffd |
---|---|
date | Tue, 10 Feb 2015 15:05:51 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:e9a9cd732c1e |
---|---|
1 function [r, c] = partial_corr_coef(S, i, j, Y) | |
2 % PARTIAL_CORR_COEF Compute a partial correlation coefficient | |
3 % [r, c] = partial_corr_coef(S, i, j, Y) | |
4 % | |
5 % S is the covariance (or correlation) matrix for X, Y, Z | |
6 % where X=[i j], Y is conditioned on, and Z is marginalized out. | |
7 % Let S2 = Cov[X | Y] be the partial covariance matrix. | |
8 % Then c = S2(i,j) and r = c / sqrt( S2(i,i) * S2(j,j) ) | |
9 % | |
10 | |
11 % Example: Anderson (1984) p129 | |
12 % S = [1.0 0.8 -0.4; | |
13 % 0.8 1.0 -0.56; | |
14 % -0.4 -0.56 1.0]; | |
15 % r(1,3 | 2) = 0.0966 | |
16 % | |
17 % Example: Van de Geer (1971) p111 | |
18 %S = [1 0.453 0.322; | |
19 % 0.453 1.0 0.596; | |
20 % 0.322 0.596 1]; | |
21 % r(2,3 | 1) = 0.533 | |
22 | |
23 X = [i j]; | |
24 i2 = 1; % find_equiv_posns(i, X); | |
25 j2 = 2; % find_equiv_posns(j, X); | |
26 S2 = S(X,X) - S(X,Y)*inv(S(Y,Y))*S(Y,X); | |
27 c = S2(i2,j2); | |
28 r = c / sqrt(S2(i2,i2) * S2(j2,j2)); |