第五回(11月13日) Task Check and Weekly Assignment

統計的仮説検定1.Chi-square test

To Do
□ 統計的仮説検定の手続きについて理解する。
□ χ二乗検定をやってみる。

Assignment
算数のテストを四段階評価(優,良,可,不可)にわけたとき,
クラス別の評価に有意な差があるといってよいか。
統計的検定の結果を踏まえてレポートしなさい。

以下のような分割表があったとする

data <- matrix(c(20, 30, 10, 40, 30, 20), byrow = T, nrow = 3)
data
##      [,1] [,2]
## [1,]   20   30
## [2,]   10   40
## [3,]   30   20

χ二乗検定をするにはchisq.test関数

chisq.test(data)
## 
##  Pearson's Chi-squared test
## 
## data:  data 
## X-squared = 16.67, df = 2, p-value = 0.0002404

イェーツの補正を行わない場合

chisq.test(data, correct = FALSE)
## 
##  Pearson's Chi-squared test
## 
## data:  data 
## X-squared = 16.67, df = 2, p-value = 0.0002404

もうひとつの補正方法。Fisherの正確確率

fisher.test(data)
## 
##  Fisher's Exact Test for Count Data
## 
## data:  data 
## p-value = 0.0002141
## alternative hypothesis: two.sided

ファイルから読み込む場合。いつもの下処理をしてから。

sample <- read.csv("sample(mac).csv", na.strings = "*")
sample$sex <- factor(sample$sex, labels = c("male", "female"))

国語の点数を,優良可不可に区分してみる。

sample$kokugo.class <- ifelse(sample$kokugo > 80, 1, ifelse(sample$kokugo > 
    70, 2, ifelse(sample$kokugo > 60, 3, 4)))
sample$kokugo.class <- factor(sample$kokugo.class, labels = c("A", "B", "C", 
    "D"))

集計と検定,一通り。

tabs <- xtabs(~kokugo.class + sex, data = sample)
chisq.test(tabs)
## 
##  Pearson's Chi-squared test
## 
## data:  tabs 
## X-squared = 2.345, df = 3, p-value = 0.5041
fisher.test(tabs)
## 
##  Fisher's Exact Test for Count Data
## 
## data:  tabs 
## p-value = 0.5011
## alternative hypothesis: two.sided
res.chisq <- chisq.test(tabs)

残差の分析。1.96が目安。

res.chisq$stdres
##             sex
## kokugo.class    male  female
##            A -0.5786  0.5786
##            B  1.5043 -1.5043
##            C -0.3968  0.3968
##            D -0.5361  0.5361