社会調査情報処理実習A 2組

2020年度 後期 木04 15:15-16:45 online

Rによるクロス集計と表独立性の検定

μ国で有権者を対象に政治意識調査を行った。調査は無作為抽出で対象者を選び、500人から回答を得られた。

問1 あなたの性自認(Gender)は何ですか。
  1. 男性(male)
  2. 女性(female)
問2 あなたの住所登録がなされている府(Prefecture)はどこですか。
  1. Morn
  2. Angerm
  3. Juic
  4. Magnol
  5. Camell
  6. Beyond
問3 あなたの支持政党(Party)は何党ですか。
  1. 保守党(Conservative)
  2. 民主党(Democratic)
  3. 特になし(unaffiliated)
問4 あなたは現内閣を支持(CabinetSupport)しますか。
  1. 支持する(Yes)
  2. 支持しない(No)
NoGenderPrefecturesPartyCabinetSupport
1femaleCamellunaffiliatedNo
2femaleMornunaffiliatedNo
3maleMagnolunaffiliatedYes
4maleAngeremunaffiliatedNo
5femaleMagnolunaffiliatedYes
6maleMornConservativeYes
7maleCamellDemocraticNo
μ国政治意識調査

自由度≠1の時

この調査から得られた下記データより、現住所(Prefecture)と支持政党(Party)との関連に付いて得られる知見を述べよ。

スクリプト

data <- read.csv("http://kyoto-edu.sakura.ne.jp/weblesson/statistics/data/politicalAwareness.csv", fileEncoding = "utf-8")
summary(data)
gender <- data$Gender
prefectures <- data$Prefectures
party <- data$Party
cabinetSupport <- data$CabinetSupport

#クロス集計
source("http://kyoto-edu.sakura.ne.jp/weblesson/statistics/socialStatisticsBasic.R", encoding="UTF-8")
crossTable <- crosstab(prefectures, party)

#χ2検定他
result <- summary(crossTable)

#結果出力
result

#帯グラフ
barplot(t(result$row.ratio), horiz=T, legend=colnames(result$row.ratio))

#ファイルへの書き出し
write.output(result,"output.crosstable.csv")
crosstab関数(socialStatisticsBasic.Rで読み込まれる自作関数)
crosstab(row,column)
  • row=行データ
  • column=列データ

出力結果

クロス集計表
$crossTable
        Conservative Democratic unaffiliated
Angerem           31         35           25
Beyond            18         21           33
Camell            10         56           16
Juic              16         23           33
Magnol            36         25           26
Morn              39         25           32

$row.ratio
        Conservative Democratic unaffiliated
Angerem    0.3406593  0.3846154    0.2747253
Beyond     0.2500000  0.2916667    0.4583333
Camell     0.1219512  0.6829268    0.1951220
Juic       0.2222222  0.3194444    0.4583333
Magnol     0.4137931  0.2873563    0.2988506
Morn       0.4062500  0.2604167    0.3333333

$column.ratio
        Conservative Democratic unaffiliated
Angerem   0.20666667 0.18918919   0.15151515
Beyond    0.12000000 0.11351351   0.20000000
Camell    0.06666667 0.30270270   0.09696970
Juic      0.10666667 0.12432432   0.20000000
Magnol    0.24000000 0.13513514   0.15757576
Morn      0.26000000 0.13513514   0.19393939

比率は$row.ratio(行方向の比率)を見る。

χ2検定

$chisq.test
         chi sq df            P
Peason 59.56225 10 4.385443e-09
Fisher       NA NA 4.997501e-04
$chisq.test
  • Peason→「Pearsonのカイ2乗:漸近有意確率(両側)」
  • Yates→「連続修正:漸近有意確率(両側)」(自由度1の時のみ出力)
  • Fisher→「Fhisherの直接法:正確な有意確率(両側)」
残差分析
$residualAnalysis
        Conservative Democratic unaffiliated
Angerem    0.9358252  0.3192884   -1.2398703
Beyond    -1.0006673 -1.4880065    2.5030785
Camell    -3.8479830  6.4191193   -2.8408656
Juic      -1.5565936 -0.9603446    2.5030785
Magnol     2.5484487 -1.7567425   -0.6798690
Morn       2.5272559 -2.4740206    0.0772706

$res.p.value
        Conservative Democratic unaffiliated
Angerem       0.3494     0.7495       0.2150
Beyond        0.3170     0.1367       0.0123
Camell        0.0001     0.0000       0.0045
Juic          0.1196     0.3369       0.0123
Magnol        0.0108     0.0790       0.4966
Morn          0.0115     0.0134       0.9384

p値が0.05未満の値について符号に着目。

  • Camell在住者は保守党支持と支持なし層が少なく、民主党支持が多い
  • Morn在住者は保守党支持が多く、民主党支持が少ない
  • Magnol在住者は保守党支持が少ない
  • Juic在住者は支持なし層が多い
  • Beyond在住者は支持なし層が多い
効果量Cramer's V
$Cramer
                [,1]
Cramer's V 0.2440538
Cramer's V
Cramer's Vの目安
効果量V効果の目安
0.5
0.3
0.1
0なし

結果

現住所ごとの支持政党比率
住所ごとの支持政党比率を示す横帯グラフ

居住地域によって支持政党に影響するかどうかをクロス集計表により検証を行った。

クロス集計表はχ2検定(Peason)により5%水準で有意であり(χ2(10)=59.56, p<.05, V=0.24)、居住地域によって支持政党が異なる傾向があると言える。

残差分析より、Cammell府在住者は民主党Democratic支持傾向が強く(z=6.42, p<.05)、Morn府(z=2.53, p<.05))・Magnol府(z=2.55, p<.05)在住者は保守党支持傾向が強い。

自由度=1の時

この調査から得られた下記データより、性自認(Gender)と内閣支持(CabinetSupport)との関連に付いて得られる知見を述べよ。

スクリプト

#クロス集計
crossTable2 <- crosstab(gender, cabinetSupport)

#χ2検定他
result2 <- summary(crossTable2)

#結果出力
result2

#帯グラフ
barplot(t(result2$row.ratio), horiz=T, legend=colnames(result2$row.ratio))

#ファイルへの書き出し
write.output(result2,"output.crosstable2.csv")

出力結果

クロス集計表
$crossTable
        No Yes
female 149 107
male   120 124

$row.ratio
              No       Yes
female 0.5820312 0.4179688
male   0.4918033 0.5081967

$column.ratio
              No       Yes
female 0.5539033 0.4632035
male   0.4460967 0.5367965

比率は$row.ratio(行方向の比率)を見る。

χ2検定

$chisq.test
         chi sq df          P
Peason 4.091833  1 0.04309088
Yates  3.736876  1 0.05322388
Fisher       NA NA 0.04845768
$chisq.test
  • Peason→「Pearsonのカイ2乗:漸近有意確率(両側)」
  • Yates→「連続修正:漸近有意確率(両側)」
  • Fisher→「Fhisherの直接法:正確な有意確率(両側)」

Fisherが出力されていればFisherの結果を参照する。

Fisherが出力されていなければYatesの結果を参照する。

残差分析
$residualAnalysis
              No       Yes
female  2.022828 -2.022828
male   -2.022828  2.022828

$res.p.value
           No    Yes
female 0.0431 0.0431
male   0.0431 0.0431

p値はPeasonのχ2検定のp値と一致する。

  • 女性は男性より内閣支持が少ない
効果量Cramer's V
$Cramer
                [,1]
Cramer's V 0.09046362
Cramer's V
Cramer's Vの目安
効果量V効果の目安
0.5
0.3
0.1
0なし

自由度1の時はファイ係数と一致する。

結果

現住所ごとの支持政党比率
性別の内閣支率を示す横帯グラフ

性自認によって内閣支持に影響するかどうかをクロス集計表により検証を行った。

クロス集計表はχ2検定(Fisher)により5%水準では有意になった(p<.05, V=0.09)。女性は男性より内閣支持が少ないと言える。