2011-04-26 78 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