set memory 30m set more off log using heckman_treatment.log, replace *** Heckman Selection Models use http://www.stata-press.com/data/r8/womenwk, clear generate d = 1 replace d = 0 if wage == . heckman wage educ age, select (married children educ age) twostep heckman wage educ age, select (married children educ age) nolog *heckman wage educ age, select (d = married children educ age) twostep nolog *probit d married children educ age, nolog predict cndwage, ycond summarize wage cndwage if wage < . predict expwage, yexpected gen wage0 = wage replace wage0 = 0 if wage >= . summarize wage0 expwage *** Heckprob use http://www.stata-press.com/data/r8/school, clear * vote = 1 if someone voted for increase in property taxes * private = 1 if children attend prive school tab private vote heckprob private years logptax, sel (vote = years loginc logptax) nolog heckprob private years logptax, sel (vote = years loginc logptax) robust nolog *** Treatment effects model use http://www.stata-press.com/data/r8/labor, replace generate wc = 0 replace wc = 1 if we > 12 tab wc regress ww wa cit wc treatreg ww wa cit, treat(wc = wmed wfed) twostep nolog predict wwctrt, yctrt predict wwcntrt, ycntrt generate diff = wwctrt - wwcntrt summarize diff ttest wwctrt = wwcntrt, unequal unpaired drop wwctrt wwcntrt diff treatreg ww wa cit, treat(wc = wmed wfed) nolog predict wwctrt, yctrt predict wwcntrt, ycntrt generate diff = wwctrt - wwcntrt summarize diff ttest wwctrt = wwcntrt, unequal unpaired