R統計學(12): 卡方分佈

直接點擊下列連接,回顧往期內容:

在介紹卡方分佈以前,咱們先簡單瞭解一下抽樣分佈。
學習

1. 抽樣分佈

對於數據,咱們能夠從三個維度(集中趨勢(均值)、離散程度(方差)和分佈形態(機率分佈))來描述,它們是瞭解數據和進行下一步數據分析的基礎。遺憾的是,數據整體有時很難得到(好比全市居民的身高數據),即便可以獲得,成本也很高且效率很低,所以,經過樣本推導整體每每成爲分析者的首選。測試

推斷性統計學就是經過樣本的描述性統計指標,來推斷出整體的描述性統計指標,從而掌握數據整體的特徵,並對整體作出其餘分析和預測等操做。在這裏,描述性統計指標也被簡稱爲參數。鏈接樣本參數和整體參數的橋樑就是抽樣分佈ui

隨機抽樣的方法從整體中抽取樣本容量爲n的樣本,每次抽取的樣本都能計算出均值、方差和標準差等,可是每次計算出的結果卻不會徹底相同,存在必定的誤差。咱們將均值、方差和標準差等描述數據集合狀況的統計指標稱爲參數。來看個例子:

某市的統計局須要瞭解本市全部居民的身高狀況,採用隨機抽樣的方式從全市抽取市民,每次抽取1000人做爲樣本,測量他們的身高,並求出這1000人樣本的身高均值、方差和標準差。若是重複k次這樣的抽樣和計算過程,就能夠獲得k套樣本均值、方差和標準差,也就是k套樣本參數。這k套參數,每套參數與每套參數之間不會徹底相同,這是由於從整體中抽取容量爲1000的樣本存在隨機性。雖然有可能某個樣本的參數恰好與整體的參數相同,可是咱們事先沒法預測,所以不能直接用某個樣本的參數來代替整體參數,那應該怎麼辦呢?這時應該利用這套樣本參數組成的機率分佈來推斷整體參數,咱們將樣本參數組成的機率分佈稱爲抽樣分佈。固然,組成抽樣分佈的樣本數量是指從整體中可以抽取的全部可能樣本數,例如,整體爲3人,每次抽取2人做爲樣本,那麼全部可能的樣本數量爲3。根據參數的不一樣,抽樣分佈能夠分爲均值抽樣分佈、方差抽樣分佈和標準差抽樣分佈等。前面文章R統計學(09): 正態分佈 (二)中的中心極限定理就是均值抽樣分佈的一個例子。

下面用R對某市居民的身高狀況進行隨機抽樣,並繪製抽樣的均值和標準差分佈圖。

set.seed(123)  ### 設置隨機數種子,使得如下結果可重複
N <- 10000000   ### 假設某市人口總數爲1000萬
heights <- rnorm(N, mean=169, sd=6)  ### 使用rnorm()函數生成身高數據,均值爲169cm,標準差爲6cm
n <- 1000    ### 每次抽樣大小
k <- 10000   ### 抽樣次數
means <- NULL  ### 初始化樣本均值
sds <- NULL   ### 初始化樣本標準差

for(i in 1:k){
  samples <- sample(heights, n)  ### 從整體中隨機抽取1000個
  mean <- mean(samples)  ### 求平均值
  sd <- sd(samples)   ### 求標準差
  means <- c(means, mean)  ### 保存均值
  sds <- c(sds, sd)   ### 保存方差
}
hist(means, main='身高均值分佈', xlab='身高均值 (cm)', ylab='頻數')
hist(sds, main='身高標準差分佈', xlab='身高標準差 (cm)', ylab='頻數')

2. 卡方分佈

許多統計推斷都是基於正態分佈的假設,以標準正態分佈變量爲基石而構造的三個著名統計量在實際中有普遍的應用,這是由於這三個統計量不只有明確背景,並且其抽樣分佈的密度函數有顯式表達式,它們被稱爲統計中的「三大抽樣分佈」。這三大抽樣分佈即爲著名的卡方分佈F分佈t分佈,今天咱們介紹卡方分佈。

卡方分佈在數理統計中具備重要意義。卡方分佈是由阿貝(Abbe)於1863年首先提出的,後來由海爾墨特(Hermert)和現代統計學的奠定人之一的卡·皮爾遜(C.K. Pearson)分別於1875年和1900年推導出來,是統計學中的一個很是有用的著名分佈。

定義

在這裏,直接給出卡方分佈的定義:

若是獨立同分布(independent and identically distributed, i.i.d.)於標準正態分佈,則的分佈稱爲自由度爲的卡方分佈(分佈,Chi-Squared distribution),記爲

機率密度

是自由度爲的卡方隨機變量, 則其機率密度函數爲

其中是伽馬函數。

是否是看着很是複雜,對於它的由來可參考這篇文章《揭祕卡方分佈》

的形狀以下:

從上圖可見,當自由度越大,機率密度曲線越趨於對稱。繪製上圖的R代碼爲:

x <- seq(0600.005)

f_nx <- function(x, n){
  x^(n/2-1)*exp(-x/2)/(2^(n/2)*gamma(n/2))
}
## 固然你也能夠用R自帶的 dchisq()函數來計算機率密度

n <- 1
plot(x, f_nx(x, n), type='l', ylim=c(00.25), ylab=expression(f[n](x)))
text(30.25, paste('n =', n))

n <- 4
lines(x, f_nx(x, n), type='l', col='red')
text(50.17, paste('n =', n) , col='red')

n <- 10
lines(x, f_nx(x, n), type='l', col='blue')
text(120.1, paste('n =', n) , col='blue')

n <- 20
lines(x, f_nx(x, n), type='l', col='purple')
text(200.075, paste('n =', n) , col='purple')

n <- 30
lines(x, f_nx(x, n), type='l', col='green')
text(300.062, paste('n =', n) , col='green')

n <- 40
lines(x, f_nx(x, n), type='l', col='pink')
text(440.05, paste('n =', n) , col='pink')
性質
  • ,則

  • ,且獨立,則

來測試一下第一個性質:

> n <- 5
> y <- rchisq(10000, n)
> mean(y)   
[15.021816  ## 約等於5
> var(y)
[110.14382  ## 約等於10

根據卡方分佈的定義,第二個性質很好理解。

應用

咱們來看卡方分佈的一個應用:估計數據整體方差的置信區間。

假設,…,獨立同分佈於正態分佈,即,則(下面式子有誤,應該是X平均值,不是X2

其中是樣本方差。能夠證實變量是自由度爲的卡方分佈(詳細證實可參考這個問答Why is chi square used when creating a confidence interval for the variance?,  網址爲:https://stats.stackexchange.com/questions/76444/why-is-chi-square-used-when-creating-a-confidence-interval-for-the-variance),即:

其中是未知的整體方差。

根據這個結論,咱們就能夠估計的置信區間:

看個例子,某加工廠生產水果罐頭,某天質量控制工程師隨機從產品中選出n = 10個隨機樣本,並記錄每一個罐頭的重量(單位爲克),得出樣本重量的方差爲9.5。求整體方差的置信區間?

根據題意有:樣本方差爲,自由度爲。根據上面的結論,整體方差 (即)置信區間可由如下給出:

> n <- 10   
> s2 <- 9.5   ### 樣本方差
> (n-1)*s2/qchisq(.975, n-1)
[14.494614
> (n-1)*s2/qchisq(.025, n-1)
[131.6621

這意味着咱們有的確信度認爲整體方差在範圍內。

卡方分佈的內容介紹就到此結束,但願對你們的學習有所幫助,也但願你們多多支持本公衆號。

本文部份內容參考草堂君的《人人都會數據分析-從生活實例學統計》,一本很是好的書,下面是購買此書的京東連接。


感謝您的閱讀!想了解更多有關技巧,請關注個人微信公衆號「R語言和Python學堂」。

個人專欄:

  • 簡書:https://www.jianshu.com/u/981ba7d6b4a6

本文分享自微信公衆號 - R語言和Python學堂(gh_02c4f77a735e)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索