R语言实战笔记 基本统计分析-相关
相關
相關系數可以用來描述定量變量之間的關系。
將使用R基礎安裝中的state.x77數據集,提供了美國50個州在1977年的人口、收入、文盲率、預期壽命、謀殺率和高中畢業率數據等。
數據如下:
相關的類型
Pearson、Spearman和Kendall相關:
可以用cor(x, use= , method= )函數計算三種相關系數。而cov()函數可用來計算協方差。
cor和cov的參數:
x:矩陣或數據框
use:指定缺失數據的處理方式。可選的方式為all.obs(假設不存在缺失數據——遇到缺失數據時將報錯)、everything(遇到缺失數據時,相關系數的計算結果將被設為missing)、complete.obs(行刪除)以及pairwise.complete.obs(成對刪除,pairwise deletion)
method:指定相關系數的類型。可選類型為pearson、spearman或kendall。
> states<-state.x77[,1:6] > cov(states) > cor(states) > cor(states,method = "spearman")cov()計算了方差和協方差
第一個cor()計算了Pearson積差相關系數
第二個cor()計算了Spearman登記相關系數(可以看到收入和高中畢業率之間存在很強的正相關,而文盲率和預期壽命之間存在很強的負相關)
默認情況下得到的結果是一個方陣。你同樣可以計算非方形的相關矩陣。
> x<-states[,c("Population","Income","Illiteracy","HS Grad")] > y<-states[,c("Life Exp","Murder")] > cor(x,y)偏相關
偏相關是指在控制一個或多個定量變量時,另外兩個定量變量之間的相互關系。
函數格式:pcor(u , s)
u是一個數值向量,前兩個數值表示要計算相關系數的變量下標,其余的數值為條件變量(即要排除影響的變量)的下標。
S為變量的協方差陣。
在控制了收入、文盲率和高中畢業率的影響時,人口和謀殺率之間的相關系數為0.346。偏相關系數常用于社會科學的研究中。
其他類型的相關
polycor 包中的 hetcor() 函數可以計算一種混合的相關矩陣,其中包括數值型變量的Pearson積差相關系數、數值型變量和有序變量之間的多系列相關系數、有序變量之間的多分格相關系數以及二分變量之間的四分相關系數。
相關性的顯著性檢驗
在計算好相關系數后,要進行統計顯著性檢驗。
常用原假設為變量間不相關(即總體的相關系數為0)。
- cor.test(x, y, alternative = , method = )
cor.test(x, y, alternative = , method = )對單個的Pearson、Spearman和Kendall相關系數進行檢驗。
x和y:要檢驗相關性的變量;
alternative:用來指定進行雙側檢驗或單側檢驗(“two.side”、“less”、“greater”);
method:用以指定要計算的相關類型(“pearson”、“kendall”、“spearman”);
> cor.test(states[,3],states[,5])檢驗了預期壽命和謀殺率的Pearson相關系數為0的原假設。在一千萬次中只會有少于一次的機會見到0.703這樣大的樣本相關度(即p=1.258e–08)。拒絕原假設。即預期壽命和
謀殺率之間的總體相關度不為0。
- corr.test()
corr.test()函數可以計算相關矩陣和顯著性水平。
use= 的取值可為 “pairwise” 或 “complete” (分別表示對缺失值執行成對刪除或行刪除)。
method= 的取值可為 “pearson” (默認值)、 “spearman” 或 “kendall”
> library(psych) > corr.test(states,use="complete")
這里可以看到,人口數量和高中畢業率的相關系數(–0.10)并不顯著地不為0(p=0.5)。
其他顯著性檢驗
- pcor.test(r, q, n)
psych包中的pcor.test(r, q, n)函數可以用來檢驗在控制一個或多個額外變量時兩個變量之間的條件獨立性。
r是由pcor()函數計算得到的偏相關系數
q是要控制的變量數(用數值表示位置)
n為樣本大小
總結
以上是生活随笔為你收集整理的R语言实战笔记 基本统计分析-相关的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 运营之旅
- 下一篇: R计算两列数据的相关系数_数据特征分析·