***** Easterly and Levine: The European Origins of Economic Development ***** ***** This version: 29 Oct 2013 ***** ***** DESCRIPTION: This file produces all the Tables and Figures in the ***** ***** paper, and only requires EasterlyLevineEO_19Oct2013.dta ***** ***** All regression tables are saved as XML files in directory on line 10 ***** ***** See variable labels for full variable names *** Change this directory to the location of the data file & working directory global directory "C:\Users\Diego\Documents\Easterly\European Origins" //Change this directory global dataloc "$directory\Data" // folder for data capture mkdir "$directory\Outs\noZAR_14Jul2014" cd "$directory\Outs\noZAR_14Jul2014" * Premlinaries: load data, define instrument set for Table 3a & 3b, set up output format clear clear matrix set more off *use "$dataloc\EasterlyLevineEO_1June2012.dta", clear use "$dataloc\EasterlyLevineEO_19Oct2013", clear local INSTRUMENTS "pop_den1500 indigmortf" macro define myout1 "pvalue nocons tdec(3)" macro define myout2 "pvalue nocons tdec(3) nor addstat(OIR p-value:, e(jp), LM p-value, e(idp))" **** Dropping ZAR from this regressions drop if country_code=="ZAR" ******************************************************************************* *** Table A: Descriptive Statistics *** quietly sum eshare if country_code~="URY", detail //No European Share data for Uruguay, so remove from descriptive statistics matrix Descriptive_Statistics=(r(N), r(mean), r(sd), r(min), r(max) , r(p50)) sum eshare euro2000pw logy pop_den1500 indigmortf latitude ME settlermort biogeography08 legalorig educ indy govtquality ethnic if country_code~="URY" foreach j in euro2000pw logy pop_den1500 indigmortf latitude ME settlermort biogeography08 legalorig educ indy govtquality ethnic { quietly sum `j' if country_code~="URY", detail matrix Descriptive_Statistics=(Descriptive_Statistics \ r(N), r(mean), r(sd), r(min), r(max) , r(p50)) } matrix rownames Descriptive_Statistics = Euro_Share Euro_2000_Putterman_Weil Current_Income Population_density_1500 Indigenous_Mortality Latitude Malaria_Ecology Settler_Mortality Biogeography Legal_Origin Education Independence Government_Quality Ethnicity matrix colnames Descriptive_Statistics = Obs Mean Std_Dev Min Max Median matrix list Descriptive_Statistics xml_tab Descriptive_Statistics, replace save(Descriptive_Statistics.xls) quietly { ******************************************************************************* *** TABLE 1 *** *** TITLE: Human Settlement before European Colonization *** DEPENDENT VAR: POPULATION DENSITY 1500 reg pop_den1500 biogeography08, robust test biogeography08=0 outreg2 using Table1, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') replace label reg pop_den1500 latitude, robust test latitude=0 outreg2 using Table1, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg pop_den1500 ME, robust test ME=0 outreg2 using Table1, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg pop_den1500 indigmortf, robust test indigmortf=0 outreg2 using Table1, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg pop_den1500 biogeography08 latitude ME indigmortf, robust test biogeography08=latitude=ME=indigmortf=0 outreg2 using Table1, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label *************************************************************** *** TABLE 2 *** *** TITLE: What Determined the Degree of European Settlement? *** DEPENDENT VAR: EURO SHARE reg eshare pop_den1500 indigmortf, robust test pop_den1500=indigmortf=0 outreg2 using Table2, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') replace label reg eshare pop_den1500 indigmortf latitude, robust test pop_den1500=indigmortf=latitude=0 outreg2 using Table2, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg eshare pop_den1500 indigmortf latitude gold_silver , robust test pop_den1500=indigmortf=latitude=gold_silver=0 outreg2 using Table2, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg eshare pop_den1500 indigmortf latitude london , robust test pop_den1500=indigmortf=latitude=london=0 outreg2 using Table2, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg eshare pop_den1500 indigmortf latitude biogeography08 , robust test pop_den1500=indigmortf=latitude=biogeography08=0 outreg2 using Table2, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg eshare pop_den1500 indigmortf latitude ME, robust test pop_den1500=indigmortf=latitude=ME=0 outreg2 using Table2, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg eshare pop_den1500 indigmortf latitude settlermort , robust test pop_den1500=indigmortf=latitude=settlermort=0 outreg2 using Table2, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label ******************************************************************* *** Table 3a (Sample: All non-european countries) *** TITLE: Does the degree of European settlement explain per capita income today? *** DEPENDENT VAR: CURRENT INCOME reg logy eshare, robust test eshare =0 outreg2 using Table3a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') replace label reg logy eshare legalorig , robust test eshare =legalorig=0 outreg2 using Table3a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare educ, robust test eshare =educ=0 outreg2 using Table3a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare indy , robust test eshare =indy=0 outreg2 using Table3a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare govtquality , robust test eshare =govtquality=0 outreg2 using Table3a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare ethnic , robust test eshare =ethnic=0 outreg2 using Table3a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label ******************************************************************* *** Table 3b (Sample: Countries with Euroshare <0.125) *** TITLE: Does the degree of European settlement explain per capita income today? *** DEPENDENT VAR: CURRENT INCOME reg logy eshare if eshare<.125 , robust test eshare=0 outreg2 using Table3b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') replace label reg logy eshare legalorig if eshare<.125 , robust test eshare=legalorig=0 outreg2 using Table3b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare educ if eshare<.125 , robust test eshare=educ=0 outreg2 using Table3b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare indy if eshare<.125, robust test eshare=indy=0 outreg2 using Table3b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare govtquality if eshare<.125, robust test eshare=govtquality=0 outreg2 using Table3b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare ethnic if eshare<.125 , robust test eshare=ethnic=0 outreg2 using Table3b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label ******************************************************************************* *** Table 4a (OLS Results; Sample: All non-European Countries) *** TITLE: Which has more of an effect on per capita income today, colonial or recent European settlement? *** DEPENDENT VAR: CURRENT INCOME reg logy eshare euro2000pw , robust test eshare=euro2000pw=0 outreg2 using Table4a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') replace label reg logy eshare euro2000pw legalorig , robust test eshare=euro2000pw=legalorig=0 outreg2 using Table4a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw educ , robust test eshare=euro2000pw=educ=0 outreg2 using Table4a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw indy , robust test eshare=euro2000pw=indy=0 outreg2 using Table4a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw govtquality , robust test eshare=euro2000pw=govtquality=0 outreg2 using Table4a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw ethnic, robust test eshare=euro2000pw=ethnic=0 outreg2 using Table4a, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label ******************************************************************************* *** Table 4b (OLS Results; Countries with Euroshare <0.125) *** TITLE: Which has more of an effect on per capita income today, colonial or recent European settlement? *** DEPENDENT VAR: CURRENT INCOME reg logy eshare euro2000pw if eshare<.125, robust test eshare=euro2000pw=0 outreg2 using Table4b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') replace label reg logy eshare euro2000pw legalorig if eshare<.125, robust test eshare=euro2000pw=legalorig=0 outreg2 using Table4b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw educ if eshare<.125, robust test eshare=euro2000pw=educ=0 outreg2 using Table4b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw indy if eshare<.125, robust test eshare=euro2000pw=indy=0 outreg2 using Table4b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw govtquality if eshare<.125, robust test eshare=euro2000pw=govtquality=0 outreg2 using Table4b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label reg logy eshare euro2000pw ethnic if eshare<.125, robust test eshare=euro2000pw=ethnic=0 outreg2 using Table4b, excel $myout1 addstat(Prob>F,`r(p)',F test:,`r(F)') append label } ******************************************************************************* *** Figure 3: Scatter Plot of European Share at Colonization and European Share in 2000 (Putterman-Weil) twoway (scatter eshare euro2000pw, mlabel( country_code) mlabsize(vsmall))(lfit euro2000pw euro2000pw ), ytitle("European Share at Colonization", size(small)) /// name("esharescatterPW",replace) xtitle("European Share in 2000 (Putterman-Weil)", size(small)) title("Figure 3: Scatter plot of Euroshare and Euroshare in 2000 P-W", size(small)) legend(off) /// xlabel(0 [0.2] 1) ylabel(0 [0.2] 1) note("Note: 45 degree line shown") graphregion(color(white)) graph export "fig3.emf", replace ***Figure 2 lowess logy eshare, nog gen(logy_fit) graph tw (scatter logy eshare) (line logy_fit eshare, sort(eshare)), title("Figure 2a: Full sample", size(small)) ytitle("Current Income", size(small)) xtitle("European share at colonization", size(small)) leg(off) graphregion(color(white)) ylabel(5(1)12) graph export "fig2a.emf", replace drop logy_fit lowess logy eshare if eshare>0 & eshare <0.125, nog gen(logy_fit) graph tw (scatter logy eshare if eshare>0 & eshare <0.125) (line logy_fit eshare if eshare>0 & eshare <0.125, sort(eshare)), title("Figure 2b: Countries with 0=0 & eshare<0.005 replace eshare_g=2 if eshare>=0.005 & eshare<0.025 replace eshare_g=3 if eshare>=0.025 & eshare<0.045 replace eshare_g=4 if eshare>=0.045 & eshare<0.065 replace eshare_g=5 if eshare>=0.065 & eshare<0.085 replace eshare_g=6 if eshare>=0.085 & eshare<0.105 replace eshare_g=7 if eshare>=0.105 & eshare<0.125 replace eshare_g=8 if eshare>=0.125 sort country global g1 "Afghanistan" "Angola" "Bahrain" "Bangladesh" "Benin" "Bhutan" "Burkina Faso" "Burundi" "Cambodia" "Cameroon" "C Afr Rep" "Chad" "China" "Comoros" "Cote d'Ivoire" "Eq Guinea" "Eritrea" "Ethiopia" "Gambia, The" "Ghana" "Guinea" "Guinea-Bissau" "Hong Kong" "India" "Indonesia" "Iran" "Iraq" "Japan" "Jordan" "Kenya" "Korea, Rep." "Kuwait" "Lao PDR" "Lebanon" "Lesotho" "Liberia" "Libya" "Macao, China" "Malaysia" "Mali" "Mauritania" "Micronesia" "Mongolia" "Nepal" "Niger" "Nigeria" "Oman" "Pakistan" "Papua N Guinea" "Philippines" "Qatar" "Rwanda" "Saudi Arabia" "Seychelles" "Sierra Leone" "Singapore" "Sri Lanka" "Sudan" "Syria" "Tanzania" "Thailand" "Togo" "Tonga" "Turkey" "Uganda" "UAE" "Uzbekistan" "Vietnam" "Yemen" global g2 "Botswana" "Cape Verde" "Egypt" "Fiji" "Gabon" "Madagascar" "Malawi" "Mozambique" "Sao Tome and P" "Senegal" "Swaziland" global g3 "Chile" "Guatemala" "Haiti" "Nicaragua" "Peru" "Suriname" "Zambia" "Zimbabwe" global g4 "Bolivia" "El Salvador" "Guyana" "Honduras" "Mexico" "Morocco" "Trinidad and Tobago" global g5 "Belize" "Brazil" "Colombia" "Djibouti" "Ecuador" "Paraguay" "Tunisia" "Venezuela" global g6 "Algeria" "Grenada" "Jamaica" "South Africa" "St. Vincent and the G" global g7 "Mauritius" "Namibia" global g8 "Antigua and Barbuda" "Argentina" "Australia" "Barbados" "Canada" "Costa Rica" "Dominica" "Dom Republic" "New Zealand" "Panama" "St. Kitts and Nevis" "St. Lucia" "United States" preserve collapse (count) eshare (mean) logy_mean=logy (median) logy_median=logy, by(eshare_g) sort eshare_g label define groups 1 "[0, 0.005)" 2 "[0.005, 0.025)" 3 "[0.025, 0.045)" 4 "[0.045, 0.065)" 5 "[0.065, 0.085)" 6 "[0.085, 0.105)" 7 "[0.105, 0.125)" 8 "[0.125, 1]" label values eshare_g groups graph tw bar eshare eshare_g, color(gs10) bargap(0) ylabel(0(10)70) ytitle("Number of countries", size(small)) text(34.5 1 "$g1", size(1.14)) text(5.5 2 "$g2", size(1.14)) text(4 3 "$g3", size(1.14)) text(3.5 4 "$g4", size(1.14)) text(4.1 5 "$g5", size(1.14)) text(2.7 6 "$g6", size(1.14)) text(1.1 7 "$g7", size(1.14)) text(6.5 8 "$g8", size(1.14)) text(70 1 "69", size(2.5)) text(13 2 "12", size(2.5)) text(9 3 "8", size(2.5)) text(8 4 "7", size(2.5)) text(9 5 "8", size(2.5)) text(6 6 "5", size(2.5)) text(3 7 "2", size(2.5)) text(14 8 "13", size(2.5)) || line logy_median eshare_g, yaxis(2) lw(medthick) ylabel(7(.5)10, axis(2)) xlabel(1 "[0, 0.005)" 2 "[0.005, 0.025)" 3 "[0.025, 0.045)" 4 "[0.045, 0.065)" 5 "[0.065, 0.085)" 6 "[0.085, 0.105)" 7 "[0.105, 0.125)" 8 "[0.125, 1]", labs(1.8)) graphregion(color(white)) ytitle("Median Current Income (in logs)", size(small) axis(2)) xtitle("") title("European Share at Colonization and Median Current Income", size(small)) legend(label(1 "Number of countries") label(2 "Median Income (right axis)") size(2) col(2) pos(1) ring(0)) graph export "fig1.emf", replace restore