いつものパスタブログ

研究とか,Rとか

Stata学習奮闘記(4日目)

sickle-sword.hatenablog.com

前回の記事はこちら

回帰分析

今回は社会科学の計量分析の基本となる回帰分析を行う.
- 従属変数y,独立変数x1, x2の回帰分析

reg y x1 x2

回帰系の変数の並べ方は共通なのでここでしっかり覚えておきたいところ

オプション

  • beta:標準化偏回帰係数を出力
  • vce(ols, robust, cluster...):標準誤差の補正方法(誤差項の分散不均一や級内相関の問題に対処する)通常はols,robustでロバスト標準誤差,clusterでクラスタロバスト標準誤差,他にbootstrapやjackknifeなどもある

二項ロジスティック回帰

二値変数に対して回帰モデルを適用するときは,二項ロジスティック回帰がよく用いられる.
- 従属変数y,独立変数x1, x2の二項ロジット

logit y x1 x2

regのところをlogitに書き換えるだけ.かんたん.
また,ロジスティック回帰は実際には
y = \log{\frac{p}{1-p}} = \alpha + \beta_1x_1 + \beta_2x_2
として推定を行っているので,実際に解釈を行う時は\exp(\beta_1)のようにオッズ比に直してから解釈するのが望ましい.
stataではlogisticというコマンドで推定を行うことで,オッズ比を出力できる.

logistic y x1 x2

多項ロジット,順序ロジット

それぞれ,mlogit ologitで実現できる

従属変数のカテゴリをA,B,Cの3カテゴリとすると,多項ロジットモデルは以下の式で表現される

\log{\frac{p_A}{p_C}} = \alpha_A + \beta_{1A}x_{1A} + \beta_{2A}x_{2A}
\log{\frac{p_B}{p_C}} = \alpha_B + \beta_{1B}x_{1B} + \beta_{2B}x_{2B}

解釈の上ではAとCのオッズ比,BとCのオッズ比を見ることになるので,「AとCを比較すると...,BとCを比較すると...」という解釈になる点に注意

また,A<B<Cという順序があるときは順序ロジットモデルを検討する
順序ロジットモデルは以下の式で表現される

\log{\frac{p_A}{p_B + p_C}} = \alpha_1 - (\beta_1x_1 + \beta_2x_2)
\log{\frac{p_A + p_B}{p_C}} = \alpha_2  - (\beta_1x_1 + \beta_2x_2)

このとき,\alpha_1, \alpha_2閾値と呼ばれ,例えば\beta_1x_1 + \beta_2x_2閾値\alpha_1を超えるとき,ある個体はAよりはBまたはCに属している確率が高いということになる.同様にして,\beta_1x_1 + \beta_2x_2閾値\alpha_2を超えるとき,ある個体はCよりはAまたはBに属している確率が高いということになる.

多項ロジットモデルと順序ロジットモデルを比較すると,順序ロジットモデルの方が推定するパラメータが少ない(偏回帰係数部分が二つの方程式で共通している)ので倹約的なモデルと言える.
一方で,これは各カテゴリ間で独立変数の効果は等しいという平行性の仮定を置いていることになる.
カテゴリ間で独立変数の効果が異なると考えられる場合は,平行性の仮定を一部緩めた一般化順序ロジットモデル(部分比例オッズモデル)を用いる.

演習

今回は年収に関する回帰分析と,結婚状態に関する多項ロジスティック回帰分析を行う
データセットはまたまたgss_catを用いる

変数の作成

* リコード
recode marital 1=. 2=1 3/5=2 6=3, gen(marital_r)
recode race 1=1 else=0,gen(other_dum)
recode race 2=1 else=0,gen(black_dum)
recode rincome 1/3=. 4=275 5=225 6=175 7=125 8=90 9=75 10=65 11=55 12=45 13=35 14=20 15=7 16=., gen(rincome_r)
  • marital_r:maritalのうち,Never marriedを1,Separated,Divorced,Widowedを2,Marriedを3,それ以外を欠損とするカテゴリ変数
  • other_dum, black_dum:raceよりそれぞれダミー変数を作成
  • rincome_r:単位は100$とし,No answer, Don't know, Refused, Not applicableは欠損, $25000 or moreは275,Lt $1000は7を割り当て,それ以外は中央値をとった連続値として扱う

回帰分析

  • 人種と年齢で収入を説明するモデル
reg rincome_r age other_dum black_dum
      Source |       SS           df       MS      Number of obs   =    12,990
-------------+----------------------------------   F(3, 12986)     =    143.45
       Model |  3204110.72         3  1068036.91   Prob > F        =    0.0000
    Residual |  96682857.7    12,986  7445.16076   R-squared       =    0.0321
-------------+----------------------------------   Adj R-squared   =    0.0319
       Total |  99886968.4    12,989  7690.11998   Root MSE        =    86.285

------------------------------------------------------------------------------
   rincome_r |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
         age |   1.005081   .0567376    17.71   0.000     .8938673    1.116295
   other_dum |  -13.87686   2.597621    -5.34   0.000    -18.96857   -8.785139
   black_dum |  -16.07347   2.184441    -7.36   0.000     -20.3553   -11.79165
       _cons |   171.8531   2.606982    65.92   0.000      166.743    176.9631
------------------------------------------------------------------------------

この表で見ると,年齢が1歳増加すると,収入が約100$増える計算になる.また,白人に比べて黒人,その他の人種では年収が低い傾向が見られる.

多項ロジスティック回帰

  • 次に年齢,収入,人種で結婚状態を説明するモデルを考える
mlogit marital_r age rincome_r other_dum black_dum
Iteration 0:   log likelihood = -13580.902  
Iteration 1:   log likelihood = -11984.316  
Iteration 2:   log likelihood = -11889.405  
Iteration 3:   log likelihood = -11888.587  
Iteration 4:   log likelihood = -11888.587  

Multinomial logistic regression                 Number of obs     =     12,988
                                                LR chi2(8)        =    3384.63
                                                Prob > chi2       =     0.0000
Log likelihood = -11888.587                     Pseudo R2         =     0.1246

------------------------------------------------------------------------------
   marital_r |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
1            |
         age |   -.084764   .0022371   -37.89   0.000    -.0891485   -.0803795
   rincome_r |  -.0024897   .0002676    -9.30   0.000    -.0030142   -.0019651
   other_dum |  -.0007778   .0742666    -0.01   0.992    -.1463376    .1447819
   black_dum |   1.002292   .0655115    15.30   0.000     .8738915    1.130692
       _cons |   3.088205   .0947333    32.60   0.000     2.902531    3.273879
-------------+----------------------------------------------------------------
2            |
         age |   .0216207   .0017648    12.25   0.000     .0181617    .0250798
   rincome_r |  -.0014875   .0002688    -5.53   0.000    -.0020143   -.0009607
   other_dum |  -.1703381   .0839494    -2.03   0.042    -.3348759   -.0058002
   black_dum |   .6633073   .0671812     9.87   0.000     .5316346      .79498
       _cons |  -1.496222     .10627   -14.08   0.000    -1.704508   -1.287937
-------------+----------------------------------------------------------------
3            |  (base outcome)
------------------------------------------------------------------------------

未婚と結婚の対比(1vs3)で見ると

  • 年齢が低い=若いと未婚の傾向にある
  • 収入が低いと未婚の傾向にある
  • 黒人だと未婚の傾向にある一方,白人とその他人種の間ではそうした傾向はない

また別居・離婚・死別と結婚の対比(2vs3)で見ると

  • 年齢が高いと,別居・離婚・死別の傾向にある
  • 収入が低いと,別居・離婚・死別の傾向にある
  • 黒人と白人を比較すると,黒人の方が別居・離婚・死別の傾向にあり,白人とその他人種を比較すると,白人の方が別居・離婚・死別の傾向にある

前回のクロス表の分析と比較しても,白人と比較した時に黒人は未婚の人の割合が高く, 現在結婚している人の割合が低いことは一致している.
前回はこの理由を経済状況を用いて説明しましたが,今回は収入を統制してもこのような傾向が見られたので,別の説明が必要と考えられる.