皮爾森卡方檢定(Pearson's chi-squared test)
先複習一下卡方獨立性檢定:
可以從下面例題練習如何用R來操作卡方獨立性檢定,Sample Data為罹患肺癌與否/患者每日吸菸數量的統計資料。
在R中輸入一個matrix:
cancer<-matrix(data=c(33,250,196,136,32,55,293,190,71,13),nrow=2,ncol=5,byrow=T)
上面這行就是把c(...)這個Vector當作cancer這個matrix的資料,然後指定cancer這個matrix是2列x5行的矩陣,data的順序是by-row,也就是從row1開始填資料,row1填完再填row2。
輸入完後,檢查一下資料:
> cancer
[,1] [,2] [,3] [,4] [,5]
[1,] 33 250 196 136 32
[2,] 55 293 190 71 13
接下來幫行跟列命名:
dimnames(cancer)<-list(c("肺癌患者","控制組"),c("1 to 4","5 to 14","15 to 24","25 to 49","50+"))
然後看一下長條圖長怎樣:
barplot(cancer, beside=T, legend.text=T, xlab="每日吸菸量(幾根)", ylab="Number of cases")
(每個function的argument是做甚麼用的,我就不詳述,在RStudio裡面查Help都很清楚)
接下來做皮爾森卡方檢定:
chisq.test(cancer)
結果是:
Pearson's Chi-squared test
data: cancer
X-squared = 36.9531, df = 4, p-value = 1.842e-07
也就是X^2值為36.9531,自由度為4,p-value為0.0000001842。
假設這題我們要求的是在95%信心水準下,罹患肺癌者與未罹患肺癌者兩個類別的數值(案例)是否獨立。則因為p-value小於0.05,所以拒絕虛無假設 => 每天吸多少菸與罹癌與否有關。
若要用比較X^2值大小的方法(X^2的意義是「樣本的觀察次數」與「估計的理論次數」的差異),則α=0.05、df=4下查表值為9.487728,36.9531>9.487728,所以也是拒絕虛無假設。
如果要知道更多檢定的結果,可以再繼續下以下指令:
cancer.chisq = chisq.test(cancer)
names(cancer.chisq)
cancer.chisq$residuals
cancer.chisq$observed
cancer.chisq$expected
cancer.chisq$stdres
這幾行就BJ4了,試試看就知道了~