Pearson(皮爾遜)相關係數
統計相關係數簡介
由於使用的統計相關係數比較頻繁,所以這裡就利用幾篇文章簡單介紹一下這些係數。
相關係數:考察兩個事物(在資料裡我們稱之為變數)之間的相關程度。
如果有兩個變數:X、Y,最終計算出的相關係數的含義可以有如下理解:
(1)、當相關係數為0時,X和Y兩變數無關係。
(2)、當X的值增大(減小),Y值增大(減小),兩個變數為正相關,相關係數在0.00與1.00之間。
(3)、當X的值增大(減小),Y值減小(增大),兩個變數為負相關,相關係數在-1.00與0.00之間。
相關係數的絕對值越大,相關性越強,相關係數越接近於1或-1,相關度越強,相關係數越接近於0,相關度越弱。
通常情況下通過以下取值範圍判斷變數的相關強度:
相關係數 0.8-1.0 極強相關
0.6-0.8 強相關
0.4-0.6 中等程度相關
0.2-0.4 弱相關
0.0-0.2 極弱相關或無相關
Pearson(皮爾遜)相關係數
1、簡介
皮爾遜相關也稱為積差相關(或積矩相關)是英國統計學家皮爾遜於20世紀提出的一種計算直線相關的方法。
假設有兩個變數X、Y,那麼兩變數間的皮爾遜相關係數可通過以下公式計算:
公式一:
公式二:
公式三:
公式四:
以上列出的四個公式等價,其中E是數學期望,cov表示協方差,N表示變數取值的個數。
2、適用範圍
當兩個變數的標準差都不為零時,相關係數才有定義,皮爾遜相關係數適用於:
(1)、兩個變數之間是線性關係,都是連續資料。
(2)、兩個變數的總體是正態分佈,或接近正態的單峰分佈。
(3)、兩個變數的觀測值是成對的,每對觀測值之間相互獨立。
3、Matlab實現
皮爾遜相關係數的Matlab實現(依據公式四實現):
function coeff = myPearson(X , Y)
% 本函式實現了皮爾遜相關係數的計算操作
%
% 輸入:
% X:輸入的數值序列
% Y:輸入的數值序列
%
% 輸出:
% coeff:兩個輸入數值序列X,Y的相關係數
%
if length(X) ~= length(Y)
error('兩個數值數列的維數不相等');
return;
end
fenzi = sum(X .* Y) - (sum(X) * sum(Y)) / length(X);
fenmu = sqrt((sum(X .^2) - sum(X)^2 / length(X)) * (sum(Y .^2) - sum(Y)^2 / length(X)));
coeff = fenzi / fenmu;
end %函式myPearson結束
4、參考內容