1.適合度考驗 (Goodness of fit test)
某一個變項是否與某個理論分配或母群分配相符合;考驗的內容僅涉及一個變項,是一種單因子考驗。研究者想瞭解在WOW_data這筆資料上,男女比例是否有不同。
用R讀取剛剛的CSV檔,並將此資料命名為 chi_1
chi_1 <- read.csv("D:/104/ML_R/WOW_data.csv",header=TRUE,sep=",")
先將要分析的變項〝性別〞(gender)利用table()形成次數分配表;之後再將結果存成count(別忘了變項性別要轉換成factor !!)
chi_1$gender <-as.factor(chi_1$gender)
count<-table(chi_1$gender)
count
##
## 0 1
## 89 104
進行卡方分析,利用chisq.test(要比較的資料)
chisq.test(count)
##
## Chi-squared test for given probabilities
##
## data: count
## X-squared = 1.1658, df = 1, p-value = 0.2803
分析結果與解釋:
卡方檢定結果顯示在WOW_data這筆資料中男女生的
比例並無顯著差異(χ^2 =1.17, p = .28)。
2.獨立性考驗: (Goodness of fit test)
試分析WOW_data資料中,性別(gender)的分佈和三個種族(ethnic)之間是否有關聯?
H0: 性別與種族之間無關聯
H1: 性別與種族之間具有關聯
用R讀取剛剛的CSV檔,並將此資料命名為 chi_2
chi_2 <- read.csv("D:/104/ML_R/WOW_data.csv", header=TRUE,sep=",")
先將要分析的變項性別(gender)和種族(ethnic)利用table()形成次數分配表;之後再將結果存成count(別忘了變項性別和種族要轉換成factor !!)
chi_2$gender <-as.factor(chi_2$gender)
chi_2$ethnic <-as.factor(chi_2$ethnic)
cross_table <- table(chi_2$gender,chi_2$ethnic)
cross_table
##
## Human Orc Undead
## 0 38 19 32
## 1 49 23 32
利用summary( ),進行獨立性考驗
summary(cross_table)
## Number of cases in table: 193
## Number of factors: 2
## Test for independence of all factors:
## Chisq = 0.6096, df = 2, p-value = 0.7373
分析結果與解釋:
卡方檢定結果顯示性別與種族之間並無統計上顯著關係( χ^2
(2)=0.61, p = .74),所以此兩變項之間相互獨立。
3.相依樣本的卡方考驗(2 by 2 contingency table)
McNemar test: 稱為非獨立樣本的卡方檢定,重點在於實驗過程中,觀察結果從負到正與從正到負的次數(或是比例)變化是否相等(也就是是否不同)。試分析WOW_data資料中一年級閱讀成績(reading_1)與三年級閱讀成績(reading_3)是否有明顯的改變。
H0: 學生在一年級與三年級時的閱讀成績並沒有不同。
H1: 學生在一年級與三年級時的閱讀成績有顯著不同。
用R讀取剛剛的CSV檔,並將此資料命名為 chi_3
chi_3 <- read.csv("D:/104/ML_R/WOW_data.csv",header=TRUE,sep=",")
進行相依樣本卡方檢定前需要對閱讀成績重新定義,先利用summary看看一年級與五年級時的閱讀成績均值為何。
summary(chi_3[c(12,22)])
## reading_3 reading_1
## Min. :423.0 Min. :393.0
## 1st Qu.:489.0 1st Qu.:467.0
## Median :503.0 Median :481.0
## Mean :499.3 Mean :477.3
## 3rd Qu.:512.0 3rd Qu.:489.0
## Max. :543.0 Max. :530.0
載入套件並利用mutate()和ifelse()將三年與五年級時的閱讀成績均值做為分界點,以上是高分組(1);以下則是低分組(0),並將新變項結果存到chi_3裡,結果如下圖:
library(dplyr)
chi_3<-mutate(chi_3, reding5 = ifelse(reading_3 >= 499.3, "1", "0"))
chi_3<-mutate(chi_3, reding3 = ifelse(reading_1 >= 477.3, "1", "0"))
將這兩個變項利用table()形成次數分配表;並存成MC_test
MC_test <-table(chi_3$reding3,chi_3$reding5)
MC_test
##
## 0 1
## 0 66 11
## 1 22 94
利用 mcnemar.test( ),計算卡方值
mcnemar.test(MC_test)
##
## McNemar's Chi-squared test with continuity correction
##
## data: MC_test
## McNemar's chi-squared = 3.0303, df = 1, p-value = 0.08172
分析結果與解釋:
如報表所示,McNemar檢定的卡方值為3.03,p值為.08,所以學生在ㄧ年級與三年級時的閱讀成績並無明顯差異。由列聯表可知,情況不變的有 66+94=160(160/193=.829=82.9%);有11名學生在ㄧ年級時的閱讀成績在低分組,但在三年級時變為高分組(5.6%),另外有22名學生則情況相反 (11.39%)。結果顯示,大部分學生在閱讀成績上並不會因為兩年的就學時間就有明顯差異。
date: “2016年1月18日,第一版”
author: “邱浩恩”