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

作者

情21-0170 関大太郎

公開

2025年11月24日

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

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

  • 課題用データ(Macro_HW10.csv)はLMSからダウンロード可能
  • データはプロジェクト・フォルダー内にDataというフォルダーを作成し、そこにアップロードしておくこと。
  • データの読み込みは必ずread_csv()関数を使うこと(read.csv()は使わない)。
# ここにRコード
# A tibble: 153 × 7
   Country       HDI    PPP  OECD Autocracy Political_Right Civil_Liberty
   <chr>       <dbl>  <dbl> <dbl>     <dbl>           <dbl>         <dbl>
 1 Afghanistan 0.496  2125.     0         1              13            14
 2 Albania     0.791 13781.     0        -9              27            40
 3 Algeria     0.759 11324.     0        -2              10            24
 4 Angola      0.574  6649.     0         2              11            21
 5 Argentina   0.83  22938.     0        -9              35            50
 6 Armenia     0.76  12974.     0        -7              21            32
 7 Australia   0.938 50001.     1       -10              40            57
 8 Austria     0.914 55824.     1       -10              37            56
 9 Azerbaijan  0.754 14257.     0         7               2             8
10 Bahrain     0.838 43624.     0        10               1            10
# ℹ 143 more rows

本データは世界153カ国の政治・経済データである。データの詳細は以下の通りである。

  • 参考)「PPP-GDP」とは「購買力平価国内総生産」を意味する。
変数 説明 備考
Country 国家名
HDI 人間開発指数
PPP 一人あたりPPP-GDP 単位は1米ドル
OECD OECD加盟有無 0:非加盟国 / 1:加盟国
Autocracy 権威主義指標 -10:民主主義〜10:権威主義
Political_Right 政治的権利指標 高いほど政治的権利が保障されている。
Civil_Liberty 市民的自由指標 高いほど市民的自由が保障されている。

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

# ここにRコード
[1] 153   7

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

# ここにRコード
[1] "Country"         "HDI"             "PPP"             "OECD"           
[5] "Autocracy"       "Political_Right" "Civil_Liberty"  

問題4: 解釈をしやすくするために、単位変換とスケール逆転を行う。一人あたり購買力平価は現在1米ドル単位であるが、これを1米ドルに変換し、PPP2という列として追加する。また、権威主義指標を逆転(-10を10に、10を-10に)し、Democracyという列として追加する。加工後、dfという新しい名のオブジェクトとして格納し、dfを出力すること。

  • 符号の逆転は元の変数に-1をかける。
# ここにRコード
# A tibble: 153 × 9
   Country       HDI    PPP  OECD Autocracy Political_Right Civil_Liberty  PPP2
   <chr>       <dbl>  <dbl> <dbl>     <dbl>           <dbl>         <dbl> <dbl>
 1 Afghanistan 0.496  2125.     0         1              13            14 0.213
 2 Albania     0.791 13781.     0        -9              27            40 1.38 
 3 Algeria     0.759 11324.     0        -2              10            24 1.13 
 4 Angola      0.574  6649.     0         2              11            21 0.665
 5 Argentina   0.83  22938.     0        -9              35            50 2.29 
 6 Armenia     0.76  12974.     0        -7              21            32 1.30 
 7 Australia   0.938 50001.     1       -10              40            57 5.00 
 8 Austria     0.914 55824.     1       -10              37            56 5.58 
 9 Azerbaijan  0.754 14257.     0         7               2             8 1.43 
10 Bahrain     0.838 43624.     0        10               1            10 4.36 
# ℹ 143 more rows
# ℹ 1 more variable: Democracy <dbl>

問題5: dfの記述統計を出力する(国名(Country)を除く)。

# ここにRコード
Descriptive Statistics  
df  
N: 153  

                            Mean    Std.Dev      Min         Max   N.Valid
--------------------- ---------- ---------- -------- ----------- ---------
                  HDI       0.71       0.16     0.38        0.95    153.00
                  PPP   20479.73   21325.42   733.14   113423.06    153.00
                 OECD       0.24       0.43     0.00        1.00    153.00
            Autocracy      -4.34       6.04   -10.00       10.00    153.00
      Political_Right      22.54      12.91    -1.00       40.00    153.00
        Civil_Liberty      34.10      15.92     1.00       60.00    153.00
                 PPP2       2.05       2.13     0.07       11.34    153.00
            Democracy       4.34       6.04   -10.00       10.00    153.00

推定と解釈

問題6: dfを使用し、以下の2つのモデルを推定する。推定結果はfit1fit2という名のオブジェクトとして格納する。推定後、推定結果を1つの表にまとめる。

  • 表の詳細については以下の表と同じ表を作成すること。

fit1の中身

fit2の中身
# ここにRコード
Model 1 Model 2
注:カッコ内はp値
(Intercept) 0.592 0.503
(<0.001) (<0.001)
PPP2 0.049 0.042
(<0.001) (<0.001)
OECD 0.079 0.034
(<0.001) (0.177)
Democracy -0.005
(0.067)
Political_Right 0.000
(0.856)
Civil_Liberty 0.004
(0.031)
Num.Obs. 153 153
R2 0.667 0.704
R2 Adj. 0.662 0.694

問題7: 問題6の結果に基づき、(1)どのモデルが人間開発指数をより説明しているかと(2)その根拠を述べよ。

ここに解釈を記入する。

問題8: 問題7で選ばれたモデルに基づき、一人あたり購買力平価GDPが人間開発指数に与える影響について述べよ。統計的有意性検定の際、\(\alpha = 0.05\)を採用する。

ここに解釈を記入する。

問題9: 問題7で選ばれたモデルに基づき、OECD加盟有無が人間開発指数に与える影響について述べよ。統計的有意性検定の際、\(\alpha = 0.10\)を採用する。

ここに解釈を記入する。

予測値の計算

問題10: fit2を使用し、日本における現在の人間開発指数の予測値を計算する。日本における各変数の直近の値は以下の通りである。計算した予測値とその不確実性(95%信頼区間)を言葉で記述すること。

変数 出典
一人当たり購買力平価GDP 52,120米ドル IMF(2023)
OECD 加盟国 OECD(2023)
民主主義指数 10 Polity V(2018)
政治的権利 40 Freedom house(2023)
市民的自由 56 Freedom house(2023)
# ここにRコード

 PPP2 OECD Democracy Political_Right Civil_Liberty Estimate Std. Error    z
 5.21    1        10              40            56     0.93      0.015 61.9
 Pr(>|z|)   S 2.5 % 97.5 %
   <0.001 Inf   0.9  0.959

Type: response

直近のデータに基づく日本の人間開発指数の予測値は約0.00であり、95%信頼区間は[0.00, 0.00]である。

問題11: fit2を用い、一人あたり購買力平価GDP(PPP2)ごとの人間開発指数の予測値を計算する。一人あたり購買力平価GDPは1万米ドルから11万米ドルまで1万米ドル単位で動かす。その他の変数は平均値に固定する。予測値の計算結果はfit2_pred1に格納し、出力すること。

# ここにRコード

 PPP2 Estimate Std. Error    z Pr(>|z|)     S 2.5 % 97.5 %
    1    0.660    0.00938 70.3   <0.001   Inf 0.641  0.678
    2    0.702    0.00927 75.7   <0.001   Inf 0.683  0.720
    3    0.744    0.01152 64.6   <0.001   Inf 0.721  0.766
    4    0.786    0.01511 52.0   <0.001   Inf 0.756  0.815
    5    0.828    0.01931 42.9   <0.001   Inf 0.790  0.866
    6    0.870    0.02379 36.6   <0.001 970.1 0.823  0.917
    7    0.912    0.02843 32.1   <0.001 747.9 0.856  0.968
    8    0.954    0.03315 28.8   <0.001 602.7 0.889  1.019
    9    0.996    0.03793 26.3   <0.001 502.6 0.922  1.071
   10    1.038    0.04275 24.3   <0.001 430.5 0.955  1.122
   11    1.080    0.04759 22.7   <0.001 376.6 0.987  1.174

Type: response

問題12: fit2を用い、OECD加盟の有無(OECD)ごとの人間開発指数の予測値を計算する。その他の変数は平均値に固定する。予測値の計算結果はfit2_pred2に格納し、出力すること。

# ここにRコード

 OECD Estimate Std. Error    z Pr(>|z|)     S 2.5 % 97.5 %
    0    0.704    0.00933 75.4   <0.001   Inf 0.685  0.722
    1    0.738    0.02046 36.1   <0.001 943.1 0.698  0.778

Type: response

問題13: fit2を用い、民主主義指数(Democracy)ごとの人間開発指数の予測値を計算する。民主主義指数は-10から10まで1単位で動かす。その他の変数は平均値に固定する。予測値の計算結果はfit2_pred3に格納し、出力すること。

# ここにRコード

 Democracy Estimate Std. Error    z Pr(>|z|)     S 2.5 % 97.5 %
       -10    0.769    0.03782 20.3   <0.001 303.1 0.695  0.843
        -9    0.765    0.03536 21.6   <0.001 341.9 0.695  0.834
        -8    0.760    0.03292 23.1   <0.001 389.1 0.695  0.824
        -7    0.755    0.03050 24.8   <0.001 447.2 0.695  0.815
        -6    0.750    0.02809 26.7   <0.001 519.8 0.695  0.806
        -5    0.746    0.02571 29.0   <0.001 612.0 0.695  0.796
        -4    0.741    0.02337 31.7   <0.001 731.0 0.695  0.787
        -3    0.736    0.02106 35.0   <0.001 887.3 0.695  0.778
        -2    0.732    0.01882 38.9   <0.001   Inf 0.695  0.769
        -1    0.727    0.01666 43.6   <0.001   Inf 0.694  0.760
         0    0.722    0.01462 49.4   <0.001   Inf 0.694  0.751
         1    0.718    0.01276 56.3   <0.001   Inf 0.693  0.743
         2    0.713    0.01117 63.9   <0.001   Inf 0.691  0.735
         3    0.708    0.00997 71.0   <0.001   Inf 0.689  0.728
         4    0.704    0.00933 75.4   <0.001   Inf 0.685  0.722
         5    0.699    0.00936 74.7   <0.001   Inf 0.681  0.717
         6    0.694    0.01005 69.1   <0.001   Inf 0.675  0.714
         7    0.690    0.01127 61.2   <0.001   Inf 0.667  0.712
         8    0.685    0.01289 53.1   <0.001   Inf 0.660  0.710
         9    0.680    0.01477 46.1   <0.001   Inf 0.651  0.709
        10    0.676    0.01682 40.2   <0.001   Inf 0.643  0.708

Type: response

可視化

問題14: fit2_pred1を用い、一人あたり購買力平価GDPと人間開発指数の予測値の関係を示す図を作成する。

  • 以下の図と同じ情報が含まれていれば、自分でカスタマイズしても良い。
# ここにRコード

問題15: fit2_pred2を用い、OECD加盟有無と人間開発指数の予測値の関係を示す図を作成する。

  • 以下の図と同じ情報が含まれていれば、自分でカスタマイズしても良い。
# ここにRコード

問題16: fit2_pred3を用い、民主主義指数と人間開発指数の予測値の関係を示す図を作成する。

  • 以下の図と同じ情報が含まれていれば、自分でカスタマイズしても良い。
# ここにRコード