第6章のStataコード

第6章 相関関係と因果関係

サンプルデータ

video_game.csv:ビデオゲームのプレイ時間と学業成績の架空データ.

police_crime.csv:2014年における都道府県別の警察官の数と犯罪認知件数に関するデータ.

6.1 相関 \(\neq\) 因果

import delimited "video_game.csv", clear

twoway (scatter grade hours)

correlate grade hours
(obs=500)

             |    grade    hours
-------------+------------------
       grade |   1.0000
       hours |  -0.8207   1.0000

6.1.3 同時性

import delimited "police_crime.csv", clear

twoway (scatter crime police)

correlate crime police
(obs=47)

             |    crime   police
-------------+------------------
       crime |   1.0000
      police |   0.1290   1.0000

6.2 ルービンの因果モデル

6.2.2 平均トリートメント効果

clear
set seed 2022

set obs 400
generate D  = rbinomial(1, 0.6)  // 確率 0.6 で 1,確率 0.4 で 0 をとるトリートメント変数
generate TE = 2                  // トリートメント効果 = 2 で個人間の差は無いと想定
generate Y  = TE * D + rnormal() // 結果変数

quietly summarize Y if D == 1
scalar EY1 = r(mean)
quietly summarize Y if D == 0
scalar EY0 = r(mean)
display (EY1 - EY0)
2.0248509
generate Z = runiform(0, 1)
replace  D = rbinomial(1, Z)
replace  Y = TE * D + (2 * Z - 1) + rnormal()

quietly summarize Y if D == 1
scalar EY1 = r(mean)
quietly summarize Y if D == 0
scalar EY0 = r(mean)
display (EY1 - EY0)
2.6453976