2011-04-26 59 views
0

我有两个向量A & B,并且都可以是(1xn)矩阵。需要使用MATLAB计算Pearson系数

将下面的代码仍然工作: C = COV(X,Y); p = C(2)/(std(x)* std(y));

+2

[在Matlab Pearson的系数和协方差计算(可能重复http://stackoverflow.com/ question/5644981/pearsons-coefficient-and-covariance-calculation-in-matlab) – abcd 2011-04-26 13:47:43

回答

1

我不知道你是什么意思“载体[...]可以(1XN)矩阵” ......并非所有的矢量1×n矩阵?你的意思是“与n-1相反”吗?此外,什么阻止你简单地尝试它?

>> x=rand(1,100);y=rand(1,100)+x; 
>> C=cov(x,y); p=C(2)/(std(x)*std(y)) 

p = 

    0.6642 

看起来约权给我...

另外,试试这个: help corrcoef

+0

我有x = [1 0 1 0 0 0]; y = [1 1 1 1 1 1];在这种情况下C(2)的值为零。任何想法,我去错了 – user537670 2011-04-28 06:28:30

+0

无处。 x和y之间存在0协方差。 (此外,y中有0个方差,但这不是必要条件,例如x和[0 1 1 1 0 0]之间也有0个协方差)。 – 2011-04-28 08:38:45