「マクロ政治データ分析実習」第12回課題

作者

情21-0170 関大太郎

公開

2023年12月19日

セットアップ&データハンドリング

問題1: {tidyverse}パッケージと{summarytools}、{modelsummary}、{marginaleffects}、{naniar}を読み込む。特定のパッケージがインストールされていない場合は、課題に取り組む前にインストールしておくこと。続いて、課題用データ(Macro_HW12.csv)を読み込み、raw_dfという名で格納し、出力する。

  • 課題用データ(Macro_HW12.csv)はLMSからダウンロード可能
  • データはプロジェクト・フォルダー内にDataというフォルダーを作成し、そこにアップロードしておくこと。
  • データの読み込みは必ずread_csv()関数を使うこと(read.csv()は使わない)。
# ここにRコード
# A tibble: 2,377 × 10
   VotedLDP Female   Age  Educ Ideology Issue1 Issue2 Issue3 Issue4 Issue5
      <dbl>  <dbl> <dbl> <dbl>    <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>
 1        1      0    38     4       10     10     10     10     10      0
 2        0      0    23     4        7      2     99      6      6      5
 3        0      0    47     4        5      1      2      5     10     10
 4        1      0    48     2        6      6      6     10     99      5
 5        0      1    41     4        5     99      3      8      8      7
 6        0      1    28     4      999      7      3     10      9     10
 7        0      1    69     2        8      9      6      0      4      4
 8        1      0    37     2        8     10     10      5     10     10
 9        0      1    70     2        5      5      5      5      5      5
10        0      1    67     3        7      9      2      0      8      0
# ℹ 2,367 more rows

 本データは早稲田大学の日野愛郎、関西大学(当時は早稲田大学)の宋財泫が実施した2019年参院選後の世論調査の一部である(データにはノイズを加えたため、本課題以外の目的では使用不可)。データの詳細は以下の通りである。

変数 説明 備考 欠損値
VotedLDP 自民党への投票有無 1: 自民党に投票 / 0: その他
Female 性別 0: 男性 / 1: 女性
Age 年齢
Educ 教育水準 高いほど高学歴 9
Ideology 政治的イデオロギー 0:革新〜5:中道〜10:保守 999
Issue1 憲法9条改正への賛否 0:改正反対〜10:改正賛成 99
Issue2 原発再稼働への賛否 0:再稼働反対〜10:再稼働賛成 99
Issue3 夫婦別姓への賛否 0:反対〜10:賛成 99
Issue4 教育無償化への賛否 0:反対〜10:賛成 99
Issue5 同性婚(容認)への賛否 0:反対〜10:賛成 99

問題2: raw_dfの大きさ(= raw_dfの行数と列数)を出力する。

# ここにRコード
[1] 2377   10

問題3: raw_dfの変数名を出力する。

# ここにRコード
 [1] "VotedLDP" "Female"   "Age"      "Educ"     "Ideology" "Issue1"  
 [7] "Issue2"   "Issue3"   "Issue4"   "Issue5"  

問題4: raw_dfの記述統計を出力する。

  • 平均値、標準偏差、最小値、最大値、有効ケース数を出力
# ここにRコード
Descriptive Statistics  
raw_df  
N: 2377  

                  Mean   Std.Dev     Min      Max   N.Valid
-------------- ------- --------- ------- -------- ---------
      VotedLDP    0.30      0.46    0.00     1.00   2377.00
        Female    0.44      0.50    0.00     1.00   2377.00
           Age   53.56     15.42   18.00    79.00   2377.00
          Educ    3.38      1.25    1.00     9.00   2377.00
      Ideology   26.25    142.64    0.00   999.00   2377.00
        Issue1    6.93     15.19    0.00    99.00   2377.00
        Issue2    6.17     15.02    0.00    99.00   2377.00
        Issue3    7.96     14.42    0.00    99.00   2377.00
        Issue4    8.80     14.27    0.00    99.00   2377.00
        Issue5    8.12     15.96    0.00    99.00   2377.00

問題5: 一部の変数には欠損値がNAでなく、9や999となっている。問題1の表を参照し、欠損値を表す値(9や99、999)を欠損値(NA)に置換する。置換した結果をtemp_dfに格納し、temp_dfを出力する。

# ここにRコード
# A tibble: 2,377 × 10
   VotedLDP Female   Age  Educ Ideology Issue1 Issue2 Issue3 Issue4 Issue5
      <dbl>  <dbl> <dbl> <dbl>    <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>
 1        1      0    38     4       10     10     10     10     10      0
 2        0      0    23     4        7      2     NA      6      6      5
 3        0      0    47     4        5      1      2      5     10     10
 4        1      0    48     2        6      6      6     10     NA      5
 5        0      1    41     4        5     NA      3      8      8      7
 6        0      1    28     4       NA      7      3     10      9     10
 7        0      1    69     2        8      9      6      0      4      4
 8        1      0    37     2        8     10     10      5     10     10
 9        0      1    70     2        5      5      5      5      5      5
10        0      1    67     3        7      9      2      0      8      0
# ℹ 2,367 more rows

問題6: temp_dfの記述統計を出力する。

  • 平均値、標準偏差、最小値、最大値、有効ケース数を出力
  • 有効ケース数(N.Vaild列)の数値が一致するかを確認すること。
# ここにRコード
Descriptive Statistics  
temp_df  
N: 2377  

                  Mean   Std.Dev     Min     Max   N.Valid
-------------- ------- --------- ------- ------- ---------
      VotedLDP    0.30      0.46    0.00    1.00   2377.00
        Female    0.44      0.50    0.00    1.00   2377.00
           Age   53.56     15.42   18.00   79.00   2377.00
          Educ    3.24      0.89    1.00    4.00   2320.00
      Ideology    5.35      2.16    0.00   10.00   2327.00
        Issue1    4.55      3.36    0.00   10.00   2317.00
        Issue2    3.85      3.20    0.00   10.00   2319.00
        Issue3    5.76      2.82    0.00   10.00   2321.00
        Issue4    6.62      2.71    0.00   10.00   2321.00
        Issue5    5.40      2.83    0.00   10.00   2308.00

問題7: 1つでも欠損値(NA)を含む行をデータから除外する。除外後のデータはdfという名のオブジェクトとしてく格納し、dfを出力する。

# ここにRコード
# A tibble: 1,993 × 10
   VotedLDP Female   Age  Educ Ideology Issue1 Issue2 Issue3 Issue4 Issue5
      <dbl>  <dbl> <dbl> <dbl>    <dbl>  <dbl>  <dbl>  <dbl>  <dbl>  <dbl>
 1        1      0    38     4       10     10     10     10     10      0
 2        0      0    47     4        5      1      2      5     10     10
 3        0      1    69     2        8      9      6      0      4      4
 4        1      0    37     2        8     10     10      5     10     10
 5        0      1    70     2        5      5      5      5      5      5
 6        0      1    67     3        7      9      2      0      8      0
 7        0      1    76     2        8      5      5      5      5      5
 8        0      1    34     4        2     10      7      7      1     10
 9        1      0    52     4        5      6      7      5      6      5
10        0      0    70     1        5      0      1      1      2      0
# ℹ 1,983 more rows

問題8: dfの記述統計を出力する。

  • 平均値、標準偏差、最小値、最大値、有効ケース数を出力
  • 有効ケース数(N.Vaild列)の数値が一致するかを確認すること。
# ここにRコード
Descriptive Statistics  
df  
N: 1993  

                  Mean   Std.Dev     Min     Max   N.Valid
-------------- ------- --------- ------- ------- ---------
      VotedLDP    0.30      0.46    0.00    1.00   1993.00
        Female    0.44      0.50    0.00    1.00   1993.00
           Age   53.64     15.44   18.00   79.00   1993.00
          Educ    3.24      0.90    1.00    4.00   1993.00
      Ideology    5.36      2.15    0.00   10.00   1993.00
        Issue1    4.54      3.37    0.00   10.00   1993.00
        Issue2    3.89      3.20    0.00   10.00   1993.00
        Issue3    5.76      2.82    0.00   10.00   1993.00
        Issue4    6.60      2.72    0.00   10.00   1993.00
        Issue5    5.40      2.81    0.00   10.00   1993.00

ロジスティック回帰分析

問題9: 以下のようなモデルを推定し、fit1という名のオブジェクトとしてく格納し、summary()関数で推定結果を出力する。

# ここにRコード

Call:
glm(formula = VotedLDP ~ Ideology + Age + Female + Educ + Issue1 + 
    Issue2 + Issue3 + Issue4 + Issue5, family = binomial("logit"), 
    data = df)

Coefficients:
             Estimate Std. Error z value Pr(>|z|)    
(Intercept) -3.846157   0.461617  -8.332  < 2e-16 ***
Ideology     0.274371   0.030646   8.953  < 2e-16 ***
Age         -0.001211   0.003889  -0.311    0.755    
Female       0.033752   0.120787   0.279    0.780    
Educ         0.106131   0.066613   1.593    0.111    
Issue1       0.205883   0.020927   9.838  < 2e-16 ***
Issue2       0.100909   0.021157   4.769 1.85e-06 ***
Issue3       0.030583   0.026063   1.173    0.241    
Issue4       0.019683   0.022067   0.892    0.372    
Issue5      -0.124282   0.026460  -4.697 2.64e-06 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 2446.8  on 1992  degrees of freedom
Residual deviance: 1907.4  on 1983  degrees of freedom
AIC: 1927.4

Number of Fisher Scoring iterations: 5

問題10: fit1を利用し、自民党への投票確率の予測値を計算する。回答者の政治的イデオロギー(Ideology)が0の場合、1の場合、2の場合、…、10の場合の予測確率を計算し、fit1_predに格納する。最後にfit1_predを出力すること。

# ここにRコード

 Ideology Estimate Pr(>|z|)     S  2.5 % 97.5 %  Age Female Educ Issue1 Issue2
        0   0.0698   <0.001 143.8 0.0495 0.0975 53.6  0.445 3.24   4.54   3.89
        1   0.0898   <0.001 160.1 0.0676 0.1184 53.6  0.445 3.24   4.54   3.89
        2   0.1149   <0.001 182.7 0.0914 0.1434 53.6  0.445 3.24   4.54   3.89
        3   0.1459   <0.001 213.7 0.1223 0.1731 53.6  0.445 3.24   4.54   3.89
        4   0.1835   <0.001 249.7 0.1609 0.2085 53.6  0.445 3.24   4.54   3.89
        5   0.2282   <0.001 257.9 0.2065 0.2514 53.6  0.445 3.24   4.54   3.89
        6   0.2801   <0.001 174.6 0.2564 0.3050 53.6  0.445 3.24   4.54   3.89
        7   0.3385   <0.001  65.8 0.3077 0.3709 53.6  0.445 3.24   4.54   3.89
        8   0.4024   <0.001  15.8 0.3598 0.4465 53.6  0.445 3.24   4.54   3.89
        9   0.4698    0.301   1.7 0.4133 0.5270 53.6  0.445 3.24   4.54   3.89
       10   0.5383    0.287   1.8 0.4678 0.6072 53.6  0.445 3.24   4.54   3.89
 Issue3 Issue4 Issue5
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4
   5.76    6.6    5.4

Columns: rowid, estimate, p.value, s.value, conf.low, conf.high, VotedLDP, Age, Female, Educ, Issue1, Issue2, Issue3, Issue4, Issue5, Ideology 
Type:  invlink(link) 

問題11: fit1_predを利用し、回答者の政治的イデオロギーと自民党に投票する確率の関係を可視化する。以下の図と同じ情報を持つのであれば、図は自由にカスタマイズしても良い。

  • 参考)ラベル内の改行\nを使用する。たとえば、"0\n(革新)"と指定すると、\nの箇所が改行される。
# ここにRコード

問題12: 問題9〜11の結果に基づき、有権者の政治的イデオロギーと自民党への投票有無の関係について述べよ。仮説検定に使用する有意水準は5%とする(\(\alpha = 0.05\))。

ここに解釈を記入する。

交互作用

問題13: 以下の2つの線形回帰分析を行う。推定結果はfit2fit3に格納する。推定結果は以下のように一つの表としてまとめて出力すること。

fit2の中身

fit3の中身
# ここにRコード
 (1)   (2)
(Intercept) 4.923 7.411
(<0.001) (<0.001)
Ideology 0.183 −0.282
(0.066) (<0.001)
Age 0.020 −0.025
(0.054) (<0.001)
Female 0.865 0.603
(<0.001) (0.074)
Educ 0.245 0.248
(<0.001) (<0.001)
Ideology × Age −0.008
(<0.001)
Ideology × Female 0.049
(0.402)
Num.Obs. 1993 1993
R2 0.092 0.083
R2 Adj. 0.090 0.080
AIC 9614.9 9636.2
BIC 9654.1 9675.4
Log.Lik. −4800.440 −4811.101
F 40.467 35.807
RMSE 2.69 2.70
注:カッコ内の数値はp値

モデル1(fit2

問題14: fit2を使用し、回答者のイデオロギー(0、1、2、…、10)ごとの夫婦別姓に対する賛否態度の予測値を計算する。ただし、イデオロギーが夫婦別姓に対する賛否に与える影響は回答者の年齢(Age)にも依存することを考慮し、回答者の年齢を20歳、40歳、60歳に動かしながら予測値を計算する。その他の説明変数はすべて平均値に固定する。予測値の結果はfit2_predに格納し、出力する。

# ここにRコード

 Ideology Age Estimate Std. Error    z Pr(>|z|)     S 2.5 % 97.5 % Female Educ
        0  20     6.50      0.388 16.7   <0.001 206.6  5.74   7.26  0.445 3.24
        0  40     6.90      0.218 31.6   <0.001 724.9  6.47   7.32  0.445 3.24
        0  60     7.29      0.173 42.1   <0.001   Inf  6.95   7.63  0.445 3.24
        1  20     6.51      0.328 19.8   <0.001 288.8  5.87   7.16  0.445 3.24
        1  40     6.74      0.185 36.5   <0.001 968.3  6.38   7.11  0.445 3.24
--- 23 rows omitted. See ?avg_predictions and ?print.marginaleffects --- 
        9  40     5.53      0.153 36.2   <0.001 949.2  5.23   5.83  0.445 3.24
        9  60     4.42      0.131 33.6   <0.001 820.3  4.16   4.67  0.445 3.24
       10  20     6.65      0.334 19.9   <0.001 291.4  6.00   7.30  0.445 3.24
       10  40     5.37      0.185 29.0   <0.001 613.4  5.01   5.74  0.445 3.24
       10  60     4.10      0.159 25.8   <0.001 486.7  3.79   4.41  0.445 3.24
Columns: rowid, estimate, std.error, statistic, p.value, s.value, conf.low, conf.high, Issue3, Female, Educ, Ideology, Age 
Type:  response 

問題15: fit2_predAge列を修正する。具体的にAgeの値が20なら"20歳"40なら"40歳"60なら"60歳"にリコーディングする。修正後、fit2_predに上書きし、出力すること。

  • 普通にfit2_predのみ入力した場合、Age列が表示されない可能性がある。この場合、print(fit2_pred, style = "data.frame")で出力すると、サンプルファイルと同じ形式で出力される。
# ここにRコード
   rowid estimate  std.error statistic       p.value   s.value conf.low
1      1 6.497290 0.38808995  16.74171  6.508802e-63  206.5791 5.736648
2      2 6.895573 0.21831838  31.58494 5.944071e-219  724.9308 6.467677
3      3 7.293856 0.17315281  42.12381  0.000000e+00       Inf 6.954483
4      4 6.512667 0.32810962  19.84906  1.122853e-87  288.8406 5.869584
5      5 6.743427 0.18458274  36.53336 3.277301e-292  968.2905 6.381652
6      6 6.974187 0.14541105  47.96188  0.000000e+00       Inf 6.689187
7      7 6.528044 0.27086987  24.10029 2.482001e-128  423.8953 5.997148
8      8 6.591281 0.15231909  43.27285  0.000000e+00       Inf 6.292741
9      9 6.654518 0.11900891  55.91614  0.000000e+00       Inf 6.421265
10    10 6.543420 0.21853504  29.94220 5.558651e-197  651.9451 6.115099
11    11 6.439135 0.12269443  52.48107  0.000000e+00       Inf 6.198658
12    12 6.334849 0.09506907  66.63418  0.000000e+00       Inf 6.148517
13    13 6.558797 0.17554800  37.36184 1.628472e-305 1012.4845 6.214729
14    14 6.286989 0.09812862  64.06886  0.000000e+00       Inf 6.094660
15    15 6.015180 0.07595650  79.19243  0.000000e+00       Inf 5.866308
16    16 6.574173 0.15016369  43.78005  0.000000e+00       Inf 6.279858
17    17 6.134843 0.08322867  73.71068  0.000000e+00       Inf 5.971717
18    18 5.695512 0.06600691  86.28660  0.000000e+00       Inf 5.566140
19    19 6.589550 0.15150460  43.49406  0.000000e+00       Inf 6.292606
20    20 5.982696 0.08335030  71.77774  0.000000e+00       Inf 5.819333
21    21 5.375843 0.06928705  77.58799  0.000000e+00       Inf 5.240043
22    22 6.604927 0.17897104  36.90500 3.841509e-298  987.9929 6.254150
23    23 5.830550 0.09843789  59.23075  0.000000e+00       Inf 5.637616
24    24 5.056174 0.08426587  60.00263  0.000000e+00       Inf 4.891016
25    25 6.620303 0.22311455  29.67222 1.753397e-193  640.3220 6.183007
26    26 5.678404 0.12310663  46.12590  0.000000e+00       Inf 5.437120
27    27 4.736505 0.10609920  44.64223  0.000000e+00       Inf 4.528554
28    28 6.635680 0.27604720  24.03821 1.108982e-127  421.7356 6.094637
29    29 5.526258 0.15278400  36.17040 1.778439e-286  949.2408 5.226807
30    30 4.416836 0.13141385  33.61013 1.193332e-247  820.2612 4.159270
31    31 6.651056 0.33361129  19.93655  1.961534e-88  291.3577 5.997190
32    32 5.374112 0.18507606  29.03731 2.225272e-185  613.4027 5.011369
33    33 4.097167 0.15855099  25.84132 3.045904e-147  486.7166 3.786413
   conf.high   Issue3    Female     Educ Ideology  Age
1   7.257933 5.756147 0.4445559 3.235324        0 20歳
2   7.323469 5.756147 0.4445559 3.235324        0 40歳
3   7.633229 5.756147 0.4445559 3.235324        0 60歳
4   7.155750 5.756147 0.4445559 3.235324        1 20歳
5   7.105203 5.756147 0.4445559 3.235324        1 40歳
6   7.259188 5.756147 0.4445559 3.235324        1 60歳
7   7.058939 5.756147 0.4445559 3.235324        2 20歳
8   6.889821 5.756147 0.4445559 3.235324        2 40歳
9   6.887771 5.756147 0.4445559 3.235324        2 60歳
10  6.971741 5.756147 0.4445559 3.235324        3 20歳
11  6.679611 5.756147 0.4445559 3.235324        3 40歳
12  6.521181 5.756147 0.4445559 3.235324        3 60歳
13  6.902865 5.756147 0.4445559 3.235324        4 20歳
14  6.479317 5.756147 0.4445559 3.235324        4 40歳
15  6.164052 5.756147 0.4445559 3.235324        4 60歳
16  6.868489 5.756147 0.4445559 3.235324        5 20歳
17  6.297968 5.756147 0.4445559 3.235324        5 40歳
18  5.824883 5.756147 0.4445559 3.235324        5 60歳
19  6.886494 5.756147 0.4445559 3.235324        6 20歳
20  6.146060 5.756147 0.4445559 3.235324        6 40歳
21  5.511643 5.756147 0.4445559 3.235324        6 60歳
22  6.955703 5.756147 0.4445559 3.235324        7 20歳
23  6.023485 5.756147 0.4445559 3.235324        7 40歳
24  5.221332 5.756147 0.4445559 3.235324        7 60歳
25  7.057600 5.756147 0.4445559 3.235324        8 20歳
26  5.919689 5.756147 0.4445559 3.235324        8 40歳
27  4.944456 5.756147 0.4445559 3.235324        8 60歳
28  7.176722 5.756147 0.4445559 3.235324        9 20歳
29  5.825709 5.756147 0.4445559 3.235324        9 40歳
30  4.674403 5.756147 0.4445559 3.235324        9 60歳
31  7.304923 5.756147 0.4445559 3.235324       10 20歳
32  5.736854 5.756147 0.4445559 3.235324       10 40歳
33  4.407921 5.756147 0.4445559 3.235324       10 60歳

問題16: fit2_predを使用し、イデオロギーと夫婦別姓に対する態度間の関係(年齢別)を表す図を作成する。以下の図と同じ情報を持つのであれば、図は自由にカスタマイズしても良い。

# ここにRコード

問題17: fit2を使用し、イデオロギーの限界効果を計算する。限界効果の計算の歳、回答者の年齢を18歳から76歳まで1歳単位で動かす。計算結果はfit2_ameに格納し、出力すること。

  • 以下のように全行を出力したい場合、print(fit2_ame, topn = Inf)と入力する。
# ここにRコード

     Term Age Estimate Std. Error       z Pr(>|z|)    S  2.5 %   97.5 %
 Ideology  18  0.03213     0.0691   0.465  0.64218  0.6 -0.103  0.16765
 Ideology  19  0.02375     0.0675   0.352  0.72487  0.5 -0.109  0.15602
 Ideology  20  0.01538     0.0659   0.233  0.81537  0.3 -0.114  0.14445
 Ideology  21  0.00700     0.0643   0.109  0.91326  0.1 -0.119  0.13296
 Ideology  22 -0.00138     0.0626  -0.022  0.98248  0.0 -0.124  0.12141
 Ideology  23 -0.00975     0.0611  -0.160  0.87312  0.2 -0.129  0.10994
 Ideology  24 -0.01813     0.0595  -0.305  0.76056  0.4 -0.135  0.09846
 Ideology  25 -0.02650     0.0579  -0.458  0.64727  0.6 -0.140  0.08703
 Ideology  26 -0.03488     0.0564  -0.619  0.53598  0.9 -0.145  0.07558
 Ideology  27 -0.04326     0.0548  -0.789  0.43021  1.2 -0.151  0.06422
 Ideology  28 -0.05163     0.0533  -0.969  0.33277  1.6 -0.156  0.05285
 Ideology  29 -0.06001     0.0518  -1.158  0.24687  2.0 -0.162  0.04156
 Ideology  30 -0.06838     0.0503  -1.359  0.17420  2.5 -0.167  0.03025
 Ideology  31 -0.07676     0.0488  -1.573  0.11576  3.1 -0.172  0.01889
 Ideology  32 -0.08514     0.0474  -1.796  0.07248  3.8 -0.178  0.00777
 Ideology  33 -0.09351     0.0460  -2.034  0.04199  4.6 -0.184 -0.00339
 Ideology  34 -0.10189     0.0445  -2.288  0.02215  5.5 -0.189 -0.01460
 Ideology  35 -0.11027     0.0432  -2.551  0.01073  6.5 -0.195 -0.02556
 Ideology  36 -0.11864     0.0419  -2.831  0.00464  7.8 -0.201 -0.03651
 Ideology  37 -0.12702     0.0405  -3.136  0.00171  9.2 -0.206 -0.04763
 Ideology  38 -0.13539     0.0393  -3.443  < 0.001 10.8 -0.212 -0.05832
 Ideology  39 -0.14377     0.0381  -3.775  < 0.001 12.6 -0.218 -0.06912
 Ideology  40 -0.15215     0.0369  -4.127  < 0.001 14.7 -0.224 -0.07990
 Ideology  41 -0.16052     0.0358  -4.482  < 0.001 17.0 -0.231 -0.09032
 Ideology  42 -0.16890     0.0347  -4.868  < 0.001 19.8 -0.237 -0.10090
 Ideology  43 -0.17727     0.0336  -5.270  < 0.001 22.8 -0.243 -0.11134
 Ideology  44 -0.18565     0.0328  -5.668  < 0.001 26.0 -0.250 -0.12145
 Ideology  45 -0.19403     0.0319  -6.088  < 0.001 29.7 -0.256 -0.13156
 Ideology  46 -0.20240     0.0310  -6.519  < 0.001 33.7 -0.263 -0.14155
 Ideology  47 -0.21078     0.0304  -6.942  < 0.001 37.9 -0.270 -0.15127
 Ideology  48 -0.21916     0.0298  -7.365  < 0.001 42.4 -0.277 -0.16083
 Ideology  49 -0.22753     0.0292  -7.804  < 0.001 47.2 -0.285 -0.17039
 Ideology  50 -0.23591     0.0288  -8.195  < 0.001 51.8 -0.292 -0.17949
 Ideology  51 -0.24428     0.0284  -8.587  < 0.001 56.6 -0.300 -0.18853
 Ideology  52 -0.25266     0.0282  -8.955  < 0.001 61.4 -0.308 -0.19736
 Ideology  53 -0.26104     0.0281  -9.280  < 0.001 65.7 -0.316 -0.20591
 Ideology  54 -0.26941     0.0281  -9.575  < 0.001 69.7 -0.325 -0.21427
 Ideology  55 -0.27779     0.0282  -9.834  < 0.001 73.4 -0.333 -0.22242
 Ideology  56 -0.28616     0.0285 -10.045  < 0.001 76.5 -0.342 -0.23033
 Ideology  57 -0.29454     0.0288 -10.218  < 0.001 79.0 -0.351 -0.23804
 Ideology  58 -0.30292     0.0293 -10.343  < 0.001 80.9 -0.360 -0.24551
 Ideology  59 -0.31129     0.0298 -10.445  < 0.001 82.4 -0.370 -0.25288
 Ideology  60 -0.31967     0.0305 -10.483  < 0.001 83.0 -0.379 -0.25990
 Ideology  61 -0.32805     0.0312 -10.513  < 0.001 83.5 -0.389 -0.26689
 Ideology  62 -0.33642     0.0320 -10.512  < 0.001 83.4 -0.399 -0.27370
 Ideology  63 -0.34480     0.0329 -10.470  < 0.001 82.8 -0.409 -0.28025
 Ideology  64 -0.35317     0.0339 -10.430  < 0.001 82.2 -0.420 -0.28681
 Ideology  65 -0.36155     0.0349 -10.366  < 0.001 81.2 -0.430 -0.29319
 Ideology  66 -0.36993     0.0360 -10.282  < 0.001 80.0 -0.440 -0.29941
 Ideology  67 -0.37830     0.0372 -10.181  < 0.001 78.5 -0.451 -0.30548
 Ideology  68 -0.38668     0.0382 -10.113  < 0.001 77.5 -0.462 -0.31174
 Ideology  69 -0.39505     0.0396  -9.981  < 0.001 75.5 -0.473 -0.31748
 Ideology  70 -0.40343     0.0408  -9.885  < 0.001 74.1 -0.483 -0.32344
 Ideology  71 -0.41181     0.0421  -9.792  < 0.001 72.8 -0.494 -0.32938
 Ideology  72 -0.42018     0.0435  -9.658  < 0.001 70.9 -0.505 -0.33491
 Ideology  73 -0.42856     0.0448  -9.574  < 0.001 69.7 -0.516 -0.34083
 Ideology  74 -0.43693     0.0462  -9.455  < 0.001 68.1 -0.528 -0.34636
 Ideology  75 -0.44531     0.0477  -9.343  < 0.001 66.5 -0.539 -0.35189
 Ideology  76 -0.45369     0.0492  -9.226  < 0.001 64.9 -0.550 -0.35730

Columns: rowid, term, estimate, std.error, statistic, p.value, s.value, conf.low, conf.high, Age, predicted_lo, predicted_hi, predicted, Issue3, Ideology, Female, Educ 
Type:  response 

問題18: fit2_ameを使用し、イデオロギーが夫婦別姓に対する賛否態度に与える影響が年齢によってどう変化するかを可視化する。以下の図と同じ情報を持つのであれば、図は自由にカスタマイズしても良い。

# ここにRコード

問題19: fit2の推定結果(問題13〜18)に基づき、有権者の政治的イデオロギーと夫婦別姓に対する賛否態度の関係について述べよ。仮説検定に使用する有意水準は5%とする(\(\alpha = 0.05\))。

ここに解釈を記入する。

モデル2(fit3

問題20: fit3を使用し、回答者のイデオロギー(0、1、2、…、10)ごとの夫婦別姓に対する賛否態度の予測値を計算する。ただし、イデオロギーが夫婦別姓に対する賛否に与える影響は回答者の性別(Female)にも依存することを考慮し、男女ごとに予測値を計算する。その他の説明変数はすべて平均値に固定する。予測値の結果はfit3_predに格納し、出力する。

# ここにRコード

 Ideology Female Estimate Std. Error    z Pr(>|z|)      S 2.5 % 97.5 %  Age
        0      0     6.88     0.2074 33.2   <0.001  800.0  6.48   7.29 53.6
        0      1     7.49     0.2665 28.1   <0.001  574.8  6.97   8.01 53.6
        1      0     6.60     0.1756 37.6   <0.001    Inf  6.26   6.95 53.6
        1      1     7.25     0.2230 32.5   <0.001  768.8  6.82   7.69 53.6
        2      0     6.32     0.1453 43.5   <0.001    Inf  6.04   6.61 53.6
        2      1     7.02     0.1813 38.7   <0.001    Inf  6.67   7.38 53.6
        3      0     6.04     0.1179 51.2   <0.001    Inf  5.81   6.27 53.6
        3      1     6.79     0.1429 47.5   <0.001    Inf  6.51   7.07 53.6
        4      0     5.76     0.0958 60.1   <0.001    Inf  5.57   5.94 53.6
        4      1     6.56     0.1112 59.0   <0.001    Inf  6.34   6.77 53.6
        5      0     5.47     0.0834 65.6   <0.001    Inf  5.31   5.64 53.6
        5      1     6.32     0.0934 67.7   <0.001    Inf  6.14   6.51 53.6
        6      0     5.19     0.0850 61.1   <0.001    Inf  5.02   5.36 53.6
        6      1     6.09     0.0975 62.5   <0.001    Inf  5.90   6.28 53.6
        7      0     4.91     0.1000 49.1   <0.001    Inf  4.71   5.11 53.6
        7      1     5.86     0.1211 48.3   <0.001    Inf  5.62   6.09 53.6
        8      0     4.63     0.1235 37.5   <0.001 1018.2  4.39   4.87 53.6
        8      1     5.62     0.1558 36.1   <0.001  945.8  5.32   5.93 53.6
        9      0     4.34     0.1517 28.6   <0.001  597.1  4.05   4.64 53.6
        9      1     5.39     0.1956 27.6   <0.001  553.0  5.01   5.77 53.6
       10      0     4.06     0.1824 22.3   <0.001  362.8  3.71   4.42 53.6
       10      1     5.16     0.2380 21.7   <0.001  343.4  4.69   5.62 53.6
 Educ
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24
 3.24

Columns: rowid, estimate, std.error, statistic, p.value, s.value, conf.low, conf.high, Issue3, Age, Educ, Ideology, Female 
Type:  response 

問題21: fit3_predFemale列を修正する。具体的にFemaleの値が0なら"男性"それ以外は"女性"にリコーディングする。修正後、fit3_predに上書きし、出力すること。

  • 普通にfit3_predのみ入力した場合、Female列が表示されない可能性がある。この場合、print(fit3_pred, style = "data.frame")で出力すると、サンプルファイルと同じ形式で出力される。
# ここにRコード
   rowid estimate  std.error statistic       p.value   s.value conf.low
1      1 6.884692 0.20743894  33.18901 1.551200e-241  799.9513 6.478120
2      2 7.487854 0.26645409  28.10185 9.298072e-174  574.7986 6.965614
3      3 6.602493 0.17557438  37.60511  0.000000e+00       Inf 6.258373
4      4 7.254805 0.22299878  32.53294 3.650230e-232  768.8193 6.817736
5      5 6.320293 0.14531578  43.49351  0.000000e+00       Inf 6.035480
6      6 7.021756 0.18129226  38.73169  0.000000e+00       Inf 6.666430
7      7 6.038094 0.11790618  51.21100  0.000000e+00       Inf 5.807002
8      8 6.788707 0.14287428  47.51525  0.000000e+00       Inf 6.508679
9      9 5.755894 0.09582238  60.06837  0.000000e+00       Inf 5.568086
10    10 6.555658 0.11120696  58.95007  0.000000e+00       Inf 6.337697
11    11 5.473695 0.08340780  65.62569  0.000000e+00       Inf 5.310218
12    12 6.322610 0.09342734  67.67409  0.000000e+00       Inf 6.139495
13    13 5.191495 0.08500981  61.06937  0.000000e+00       Inf 5.024879
14    14 6.089561 0.09745816  62.48384  0.000000e+00       Inf 5.898546
15    15 4.909296 0.09995672  49.11421  0.000000e+00       Inf 4.713384
16    16 5.856512 0.12114153  48.34438  0.000000e+00       Inf 5.619079
17    17 4.627096 0.12349452  37.46803 3.055864e-307 1018.2203 4.385051
18    18 5.623463 0.15575686  36.10411 1.955013e-285  945.7823 5.318185
19    19 4.344897 0.15167504  28.64609 1.793388e-180  597.1044 4.047619
20    20 5.390414 0.19558343  27.56069 3.295144e-167  553.0417 5.007078
21    21 4.062697 0.18235848  22.27863 5.955122e-110  362.8380 3.705281
22    22 5.157365 0.23801956  21.66782 4.128363e-104  343.4350 4.690855
   conf.high   Issue3      Age     Educ Ideology Female
1   7.291265 5.756147 53.64074 3.235324        0   男性
2   8.010094 5.756147 53.64074 3.235324        0   女性
3   6.946612 5.756147 53.64074 3.235324        1   男性
4   7.691875 5.756147 53.64074 3.235324        1   女性
5   6.605107 5.756147 53.64074 3.235324        2   男性
6   7.377083 5.756147 53.64074 3.235324        2   女性
7   6.269186 5.756147 53.64074 3.235324        3   男性
8   7.068736 5.756147 53.64074 3.235324        3   女性
9   5.943703 5.756147 53.64074 3.235324        4   男性
10  6.773620 5.756147 53.64074 3.235324        4   女性
11  5.637171 5.756147 53.64074 3.235324        5   男性
12  6.505724 5.756147 53.64074 3.235324        5   女性
13  5.358111 5.756147 53.64074 3.235324        6   男性
14  6.280575 5.756147 53.64074 3.235324        6   女性
15  5.105207 5.756147 53.64074 3.235324        7   男性
16  6.093945 5.756147 53.64074 3.235324        7   女性
17  4.869141 5.756147 53.64074 3.235324        8   男性
18  5.928741 5.756147 53.64074 3.235324        8   女性
19  4.642174 5.756147 53.64074 3.235324        9   男性
20  5.773751 5.756147 53.64074 3.235324        9   女性
21  4.420113 5.756147 53.64074 3.235324       10   男性
22  5.623875 5.756147 53.64074 3.235324       10   女性

問題22: fit3_predを使用し、イデオロギーと夫婦別姓に対する態度間の関係(性別ごと)を表す図を作成する。以下の図と同じ情報を持つのであれば、図は自由にカスタマイズしても良い。

# ここにRコード

問題23: fit3を使用し、イデオロギーの限界効果を男女ごとに計算する。計算結果はfit3_ameに格納し、出力すること。

# ここにRコード

     Term Female Estimate Std. Error     z Pr(>|z|)    S  2.5 % 97.5 %
 Ideology      0   -0.282     0.0353 -7.99   <0.001 49.4 -0.351 -0.213
 Ideology      1   -0.233     0.0470 -4.96   <0.001 20.5 -0.325 -0.141

Columns: rowid, term, estimate, std.error, statistic, p.value, s.value, conf.low, conf.high, Female, predicted_lo, predicted_hi, predicted, Issue3, Ideology, Age, Educ 
Type:  response 

問題24: fit3_ameを使用し、イデオロギーが夫婦別姓に対する賛否態度に与える影響が性別によってどう変化するかを可視化する。以下の図と同じ情報を持つのであれば、図は自由にカスタマイズしても良い。

# ここにRコード

問題25: fit3の推定結果(問題13、19〜24)に基づき、有権者の政治的イデオロギーと夫婦別姓に対する賛否態度の関係について述べよ。仮説検定に使用する有意水準は5%とする(\(\alpha = 0.05\))。

ここに解釈を記入する。