Problem 2.19

Female

Female = array(c(1,2,0,0,3,3,1,2,11,17,8,4,2,3,5,2), 
               dim = c(4,4), 
               dimnames = list(所得 = c("<5000" , "5000 ~ 15000" , "15000 ~ 25000" , ">25000"),
                               工作滿意度 = c("極不滿意" , "稍微滿意" , "普通滿意" , "非常滿意")));Female
##                工作滿意度
## 所得          極不滿意 稍微滿意 普通滿意 非常滿意
##   <5000                1        3       11        2
##   5000 ~ 15000         2        3       17        3
##   15000 ~ 25000        0        1        8        5
##   >25000               0        2        4        2

Male

Male = array(c(1,0,0,0,1,3,0,1,2,5,7,9,1,1,3,6), 
               dim = c(4,4), 
               dimnames = list(所得 = c("<5000" , "5000 ~ 15000" , "15000 ~ 25000" , ">25000"),
                               工作滿意度 = c("極不滿意" , "稍微滿意" , "普通滿意" , "非常滿意")));Male 
##                工作滿意度
## 所得          極不滿意 稍微滿意 普通滿意 非常滿意
##   <5000                1        1        2        1
##   5000 ~ 15000         0        3        5        1
##   15000 ~ 25000        0        0        7        3
##   >25000               0        1        9        6

合併

Work = Female+Male;Work
##                工作滿意度
## 所得          極不滿意 稍微滿意 普通滿意 非常滿意
##   <5000                2        4       13        3
##   5000 ~ 15000         2        6       22        4
##   15000 ~ 25000        0        1       15        8
##   >25000               0        3       13        8
  1. 以\(X^2\)及\(G^2\)檢定獨立性,並解釋結果。
logl = loglin(Work, margin=c(1,2), fit=T);logl
## 2 iterations: deviation 3.552714e-15
## $lrt
## [1] 13.4673
## 
## $pearson
## [1] 11.52426
## 
## $df
## [1] 9
## 
## $margin
## [1] "所得" NA    
## 
## $fit
##                工作滿意度
## 所得           極不滿意 稍微滿意 普通滿意 非常滿意
##   <5000         0.8461538 2.961538 13.32692 4.865385
##   5000 ~ 15000  1.3076923 4.576923 20.59615 7.519231
##   15000 ~ 25000 0.9230769 3.230769 14.53846 5.307692
##   >25000        0.9230769 3.230769 14.53846 5.307692

★\(X^2\) = 11.5242585

★\(G^2\) = 13.4673043

1-pchisq(logl$pearson, logl$df)
## [1] 0.2414764

p-value for \(X^2\) = 0.2414764

★因為p_value for \(X^2\) > 0.05,沒有足夠證據推翻 「所得」與「工作滿意度」之間獨立

1-pchisq(logl$lrt, logl$df)
## [1] 0.1425759

p-value for \(G^2\) = 0.1425759

★因為p_valuefor \(G^2\) > 0.05,沒有足夠證據推翻 「所得」與「工作滿意度」之間獨立

b.將 \(G^2\) 分解成三個成分, 各代表一個 2×4 表如下:

  1. 比較前兩個所得水準對工作滿意度的效應
part1 = Work[1:2 , ] ; part1
##               工作滿意度
## 所得         極不滿意 稍微滿意 普通滿意 非常滿意
##   <5000               2        4       13        3
##   5000 ~ 15000        2        6       22        4
logl_pt1 = loglin(part1, margin=c(1,2), fit=T);logl_pt1
## 2 iterations: deviation 0
## $lrt
## [1] 0.2950684
## 
## $pearson
## [1] 0.2994652
## 
## $df
## [1] 3
## 
## $margin
## [1] "所得" NA    
## 
## $fit
##               工作滿意度
## 所得         極不滿意 稍微滿意 普通滿意 非常滿意
##   <5000        1.571429 3.928571    13.75     2.75
##   5000 ~ 15000 2.428571 6.071429    21.25     4.25
1-pchisq(logl_pt1$lrt, logl_pt1$df)
## [1] 0.9609533

★\(G^2_1\) = 0.2950684

p-value for \(G^2_1\) = 0.9609533

p-value > 0.05也表示影響不顯著

表示前兩個所得水準對工作滿意度的影響較小

  1. 比較後兩個所得水準對工作滿意度的效應
part2 = Work[3:4 , ] ; part2
##                工作滿意度
## 所得          極不滿意 稍微滿意 普通滿意 非常滿意
##   15000 ~ 25000        0        1       15        8
##   >25000               0        3       13        8
logl_pt2 = loglin(part2, margin=c(1,2), fit=T);logl_pt2
## 2 iterations: deviation 0
## $lrt
## [1] 1.189475
## 
## $pearson
## [1] NaN
## 
## $df
## [1] 3
## 
## $margin
## [1] "所得" NA    
## 
## $fit
##                工作滿意度
## 所得          極不滿意 稍微滿意 普通滿意 非常滿意
##   15000 ~ 25000        0        2       14        8
##   >25000               0        2       14        8
1-pchisq(logl_pt2$lrt, logl_pt2$df)
## [1] 0.7555297

★\(G^2_2\) = 1.1894752

p-value for \(G^2_2\) = 0.7555297

p-value > 0.05也表示影響不顯著

表示後兩個所得水準對工作滿意度的影響較小

  1. 合併前兩個所得水準及後兩個所得水準, 然後比較它們 (對工作滿意度)的差異。

    解釋之。工作满意度是否和所得水準低於或高於 $15,000 有關?

★\(G^2_1\) = 0.2950684 < \(G^2_2\) = 1.1894752

這表示「後兩個所得水準」比「前兩個所得水準」對工作滿意度的影響稍微強一些。

因此工作满意度和所得水準低於或高於 $15,000 是有相關。

c.利用所得及工作滿意度的有序性檢定其獨立性, 解釋其結果, 並說明為何與 \(X^2\) 及\(G^2\) 檢定的差異那麼大。

順序型檢定

所得為順序型變數:以分數u = 4999,10000,20000,25001,分別表示所得的四個類別 <5000 , 5000 ~ 15000 , 15000 ~ 25000 , >25000

工作滿意程度:以分數 v=1,表示「極不滿意」,v=2表示「稍微滿意」,v=3表示「普通滿意」,v=4表示「非常滿意」

ordinal = function(x,u,v)
                  {
                    n = sum(x)
                    upper1 = u %*% x %*% v
                    upper2 = sum(u %*% x) * sum(x %*% v) / n
                    upper = upper1 - upper2
                    lower1 = sum((u*u) %*% x) - (sum(u %*% x))^2 / n
                    lower2 = sum(x %*% (v*v)) - (sum(x %*% v))^2 / n
                    lower = sqrt(lower1 * lower2)
                    r = upper/lower
                    msq = (n - 1)*r^2
                    p = 1-pchisq(msq, 1)
                    return(list(r=r, M.square=msq, p.value=p))
}

u = c(4999,10000,20000,25001)
v = c(1,2,3,4)

ordinal.t = ordinal(Work, u, v);ordinal.t
## $r
##          [,1]
## [1,] 0.292126
## 
## $M.square
##          [,1]
## [1,] 8.789775
## 
## $p.value
##             [,1]
## [1,] 0.003029237

\(M^2\) = 8.7897746

p-value = 0.0030292

因為p-value = 0.0030292 < 0.5,有足夠證據說明所得愈多,工作滿意程度會愈高

\(X^2\)及\(G^2\)檢定的差異那麼大是因為題目是屬於順序型檢定

d.換一組「合理的」分數再做一次 (c) 所做的, 藉此檢查分數選擇的敏感性。

所得為順序型變數:以分數u = 2499,10000,20000,30000,分別表示所得的四個類別 <5000 , 5000 ~ 15000 , 15000 ~ 25000 , >25000

工作滿意程度:以分數 v=1,表示「極不滿意」,v=2表示「稍微滿意」,v=3表示「普通滿意」,v=4表示「非常滿意」

u = c(2499,10000,20000,30000)
v = c(1,2,3,4)

ordinal.t = ordinal(Work, u, v);ordinal.t
## $r
##           [,1]
## [1,] 0.2739664
## 
## $M.square
##          [,1]
## [1,] 7.730929
## 
## $p.value
##             [,1]
## [1,] 0.005428281

\(M^2\) = 7.7309291

p-value = 0.0054283

換了數值後,p-value = 0.0054283 < 0.5

因此能表示此題目是屬於順序型檢定的題目