ch6.5.do open
file:script:do
# | content |
---|---|
1 [+] | * ITSP 6.5 - |
3 [+] | use airquality , |
// estimate with OLS |
|
5 [+] | qui regress so2 pop manuf wind |
6 [+] | mfx compute , |
7 [+] | matrix nu = e(Xmfx_eyex) |
8 [+] | estadd scalar nu = nu[1, 1] |
9 [+] | matrix nuse = e(Xmfx_se_eyex) |
10 [+] | estadd scalar nuse = nuse[1, 1] |
11 [+] | estimates store one |
// reestimate using IV |
|
13 [+] | qui ivregress 2sls so2 (pop = temp precip) manuf wind |
14 [+] | mfx compute , |
15 [+] | matrix nu = e(Xmfx_eyex) |
16 [+] | estadd scalar nu = nu[1, 1] |
17 [+] | matrix nuse = e(Xmfx_se_eyex) |
18 [+] | estadd scalar nuse = nuse[1, 1] |
19 [+] | estimates store two |
21 [+] | esttab one two , |
23 [+] | qui summarize so2 , |
24 [+] | generate hiso2 = (so2 > r(p50)) & !missing(so2) |
25 [+] | summarize precip , |
26 [+] | generate hiprecip = (precip > r(mean)) & !missing(precip) |
27 [+] | qui probit hiso2 pop manuf |
28 [+] | mfx compute |
29 [+] | estimates store three |
30 [+] | qui probit hiso2 pop manuf hiprecip |
31 [+] | mfx compute |
32 [+] | estimates store four |
34 [+] | esttab three four , |
* ITSP 6.5 - use airquality, clear // estimate with OLS qui regress so2 pop manuf wind mfx compute, eyex matrix nu = e(Xmfx_eyex) estadd scalar nu = nu[1, 1] matrix nuse = e(Xmfx_se_eyex) estadd scalar nuse = nuse[1, 1] estimates store one // reestimate using IV qui ivregress 2sls so2 (pop = temp precip) manuf wind mfx compute, eyex matrix nu = e(Xmfx_eyex) estadd scalar nu = nu[1, 1] matrix nuse = e(Xmfx_se_eyex) estadd scalar nuse = nuse[1, 1] estimates store two esttab one two, mtitles("OLS" "IV") stat(nu nuse, labels("Elas.(pop)" "SE")) qui summarize so2, detail generate hiso2 = (so2 > r(p50)) & !missing(so2) summarize precip, meanonly generate hiprecip = (precip > r(mean)) & !missing(precip) qui probit hiso2 pop manuf mfx compute estimates store three qui probit hiso2 pop manuf hiprecip mfx compute estimates store four esttab three four, margin