相關係數及matlab實現

統計相關係數簡介

 

 

由於使用的統計相關係數比較頻繁,所以這裏就利用幾篇文章簡單介紹一下這些係數。

 

相關係數:考察兩個事物(在數據裏我們稱之爲變量)之間的相關程度。

 

如果有兩個變量: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實現(依據公式四實現):

  1. function coeff = myPearson(X , Y)  
  2. % 本函數實現了皮爾遜相關係數的計算操作  
  3. %  
  4. % 輸入:  
  5. %   X:輸入的數值序列  
  6. %   Y:輸入的數值序列  
  7. %  
  8. % 輸出:  
  9. %   coeff:兩個輸入數值序列X,Y的相關係數  
  10. %  
  11.   
  12.   
  13. if length(X) ~= length(Y)  
  14.     error('兩個數值數列的維數不相等');  
  15.     return;  
  16. end  
  17.   
  18. fenzi = sum(X .* Y) - (sum(X) * sum(Y)) / length(X);  
  19. fenmu = sqrt((sum(X .^2) - sum(X)^2 / length(X)) * (sum(Y .^2) - sum(Y)^2 / length(X)));  
  20. coeff = fenzi / fenmu;  
  21.   
  22. end %函數myPearson結束  

 

也可以使用Matlab中已有的函數計算皮爾遜相關係數:

  1. coeff = corr(X , Y);  

 

 

4、參考內容

 

http://zh.wikipedia.org/zh-cn/%E7%9B%B8%E5%85%B3


轉載自:http://blog.csdn.net/wsywl/article/details/5727327

發佈了20 篇原創文章 · 獲贊 5 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章