網站首頁 健康小知識 母嬰教育 起名 運動知識 職場理財 情感生活 綠色生活 遊戲數碼 美容 特色美食 愛好

R語言怎麼做相關性分析

欄目: 學習交流 / 發佈於: / 人氣:1.63W

相關係數是表示不同變量之間的統計關係的強弱。其取值範圍是在[-1,1]之間,即強負相關(-1)、完全不相關(0)、強正相關(1)。那麼我們得到一組數據,想要分析其各變量之間的關係,除了傳統算法(公式計算)外,還可以藉助R語言中封裝好的程序包,不僅可以計算不同種類的相關係數,還可以做相關性的顯著性檢驗等功能全面。

R語言怎麼做相關性分析

操作方法

(01)R語言計算相關係數,首先需要加載cor()函數包,它可以計算三種不同的相關係數如Pearson相關係數、Spearman相關係數、Kendall相關係數。而pcor()函數包則是計算偏相關係數。函數包的下載具體就不細説了,RStudio主頁,tools菜單,點Install packages,輸入函數包名稱下載即可,具體請參考本人的另外兩篇經驗“R語言如何做SVM和RF”,介紹如何安裝函數包。另外,cor()函數和cov函數都是內置的無需下載,psych包需要加載。

(02)數據:本文的數據是筆者做論文時通過窗口傅里葉變換提取地類特徵,有其13特徵。部分數據截圖,如圖所示

R語言怎麼做相關性分析 第2張

(03)計算13個特徵之間的相關係數,cor()函數可以計算三種相關係數,其調用格式cor(x,use=,method=),use是指定缺失值的處理方式,系統默認是use="everthing"和method="pearson"。一般也需要計算方差和協差陣,用cov()函數即可,下面計算方差和兩種相關係數,代碼如圖所示

R語言怎麼做相關性分析 第3張

(04)當然如果只想知道部分變量之間的相關係數,則可以調用cor(x,y)來計算想要數據的相關係數。如圖所示

R語言怎麼做相關性分析 第4張

(05)相關性的顯著性檢驗:相關係數計算好之後,判斷是否其具有顯著性。則假設變量之間不相關,即總體相關係數為(x,y,alternative=,method=)得出某兩個變量是否顯著。默認情況下alternative=“”即總體相關係數不等於0.若總體相關係數小於0,取“less”,大於0取“greater”。如下圖,檢驗兩個變量的顯著性,概率為p-value=1.217e-11,上億次都少於一次的機會見到0.065這樣大的樣本相關度,幾乎不可能,拒絕原假設。即兩變量的總體相關度不為0.

R語言怎麼做相關性分析 第5張

(06)函數只能每次檢驗一種相關關係。而psych包()函數可以做總體(13個特徵)的相關檢驗。(data,use="complete") use取值有兩種“pairwise”,"complete"是處理缺失值的,代碼如圖所示,可以清晰相關係數對應的概率。

R語言怎麼做相關性分析 第6張

特別提示

mothod是對應不同的相關係數名稱

Tags:相關性 語言