version 11.1 cap log close clear * set mem 100m set matsize 800 set more off log using nullncpoints.log, replace use Francemodel.dta, clear drop if year!=2011 drop if division!=1 local nr=48 preserve keep home_id away_id home_points away_points home_winnull home_drawnull outsheet using france2, nonames replace restore quietly{ ***null model: gen home_nullpoints=0 gen away_nullpoints=0 gen home_gamepoints=3*home_winnull+home_drawnull gen away_gamepoints=3*away_winnull+away_drawnull forvalues i=1/`nr'{ gen points`i'=home_gamepoints*dumhome`i'+away_gamepoints*dumaway`i' egen seasonpoints`i'=total(points`i') replace seasonpoints`i'=. if seasonpoints`i'==0 replace home_nullpoints=seasonpoints`i' if dumhome`i'==1 replace away_nullpoints=seasonpoints`i' if dumaway`i'==1 drop seasonpoints`i' drop points`i' } ***no controls model gen home_ncpoints=0 gen away_ncpoints=0 replace home_gamepoints=3*home_winnc+home_drawnc replace away_gamepoints=3*away_winnc+away_drawnc forvalues i=1/`nr'{ gen points`i'=home_gamepoints*dumhome`i'+away_gamepoints*dumaway`i' bysort year: egen seasonpoints`i'=total(points`i') replace seasonpoints`i'=. if seasonpoints`i'==0 replace home_ncpoints=seasonpoints`i' if dumhome`i'==1 replace away_ncpoints=seasonpoints`i' if dumaway`i'==1 drop seasonpoints`i' drop points`i' } } collapse home_nullpoints home_ncpoints, by(home_team year) table home_team, c(mean home_nullpoints mean home_ncpoints) log close clear