use "C:\Post soviet economics 2011\Budapest paper\Final files\for website\transition.dta", clear *This generates results reported in Daniel Treisman, "Twenty-five years of market reform: The political economy of change after communism," UCLA, June 2014 *GDP per capita in the median country was 47 percent higher in 2011 than in 1990. I use data from the Penn World Tables (8.0) since it is more complete for early years than other sources. *rgdpna is real GDP at constant 2005 national prices (in mil. 2005US$), from national account statistics; rgdpnapc is this divided by population, from World Development Indicators. *The population figures in Penn World Tables (8.0) turn out to be inaccurate when compared to census data from, for example India and China, where PWT (8.0) is tens *of millions off. WDI figures are closer. xtset ccode year drop rgdpna9011 gen rgdpna9011 = ((rgdpnapc/l21.rgdpnapc)-1)*100 replace rgdpna9011=. if year~=2011 bysort year: egen med9011rgdpna = median(rgdpna9011) list med9011rgdpna if country=="Estonia" &year==2011, clean noobs *This is median growth in the postcommunist countries gsort -rgdpna9011 list country rgdpna9011 if year==2011&rgdpna9011~=., clean noobs *Consumption by households was 53 percent higher xtset ccode year gen hconsna = csh_c*rgdpnapc gen hconsna9011 = ((hconsna/l21.hconsna)-1)*100 replace hconsna9011=. if year~=2011 bysort year: egen medhconsna9011 = median(hconsna9011) list medhconsna9011 if year==2011&country=="Estonia" *this gives the median % change in household consumption per capita for former communist gsort -hconsna9011 list country hconsna9011 if year==2011&hconsna9011~=., clean noobs *The gap grew from in 1990 to in 2010 bysort year: egen maxrgdpnapc = max(rgdpnapc) bysort year: egen minrgdpnapc = min(rgdpnapc) gen range = maxrgdpnapc - minrgdpnapc list year min max range if country=="Estonia"&year>1989, clean noobs *Seven years after the start of transition, 20 of the 29 had increased by at least 40 percentage points on the reform scale xtset ccode year gen debrdtplus7 = f7.ebrd2-ebrd2 gsort debrdtplus7 list country year debrdtplus7 if year==transyear, noobs clean *All the countries reformed more in their first five years than in the subsequent 10 except for war-torn Bosnia and Yugoslavia. xtset ccode year gen debrdtplus5 = f5.ebrd2-ebrd2 replace debrdtplus5= . if year~=transyear bysort ccode: egen dtplus5 = mean(debrdtplus5) gen debrd5to15 = f10.ebrd2-ebrd2 replace debrd5to15= . if year~=transyear+5 bysort ccode: egen dt5to15 = mean(debrd5to15) gsort dtplus5 list country dtplus5 dt5to15 if year==2000, noobs clean *By this point, countries already divided clearly into leaders and laggards—and their relative rankings changed little in subsequent years. Many moved up or down a few places, but rarely more than five. bysort year: egen ranke =rank(ebrd2) xtset ccode year list country ranke f14.ranke if year==1996, noobs clean *In fact, countries’ reform scores in 1993 already correlate highly with their scores in 2010 (r = .79). corr ebrd2 f17.ebrd2 if year==1993 mean libref privref instref, over(year) *Those countries that led on one type tended to lead on the others, and those that lagged on one tended to lag on all. mean libref privref instref, over(year) bysort year: egen ranklib =rank(libref) bysort year: egen rankpriv =rank(privref) bysort year: egen rankinst =rank(instref) corr ranklib rankpriv rankinst bysort year: egen maxeb = max(ebrd2) bysort year: egen mineb = min(ebrd2) gen rangeeb = maxeb-mineb mean rangeeb, over(year) *neighbor effects with just non-Soviet bloc neighbors (i.e. including China) xtset ccode year gen debrd9010 = ebrd2-l20.ebrd2 replace debrd9010=. if year~=2010 gen debrd8910 = ebrd2-l21.ebrd2 replace debrd8910=. if year~=2010 replace polity2=-5 if formyugo==1&year==1990 replace polity2 = 8 if country=="Czech"&year>2008 replace pol2norm = (5*polity2+50)/100 if polity2~=. gen dpol9010 = pol2norm-l20.pol2norm replace dpol9010=. if year~=2010 gen ncneighpol90norm = (5*ncneighpol90+50)/100 if ncneighpol90~=. replace gdppc05ppp = 25251.73 if country=="Czech"&year==2010 *make income in thousands gen gdp05ths = gdppc05ppp/1000 gen ncneighgdp90ths = ncneighgdp90/1000 gen dgdp9010 = ((gdppc05pp/l20.gdppc05pp)-1)*100 replace dgdp9010=. if year~=2010 reg dpol9010 l20.pol2norm ncneighpol90norm if year==2010, rob outreg using test6, se starlevel(10 5 1) replace reg dgdp9010 l20.gdp05ths ncneighgdp90ths if year==2010, rob outreg using test6, se starlevel(10 5 1) merge reg debrd8910 l21.ebrd2 ncneighefin85 if year==2010, rob outreg using test6, se starlevel(10 5 1) merge *Historical legacies *religion data from World Religion Dataset: National Religion Dataset http://www.thearda.com/Archive/Files/Downloads/WRDNATL_DL2.asp reg debrd8910 l21.ebrd2 l15.protang l15.chcatpct l15.chortpct l15.isgenpct if year==2010, rob outreg using test7, se starlevel(10 5 1) replace reg debrd8910 l21.ebrd2 l15.protang l15.chcatpct l15.chortpct l15.isgenpct yearscom if year==2010, rob outreg using test7, se starlevel(10 5 1) merge reg debrd8910 l21.ebrd2 yearscom l15.protang l15.chcatpct l15.chortpct l15.isgenpct ncneighefin85 if year==2010, rob outreg using test7, se starlevel(10 5 1) merge *Adding initial GDP per capita or the country’s pre-transition level of exports as a share of GDP (which some recommend as a measure of economic distortions), neither of these are statistically significant and they add only a few percentage points to the variance explained. gen tygdp = gdppc05ppp replace tygdp=. if year~=transyear bysort ccode: egen transyeargdp = max(tygdp) replace transyeargdp = 8171.4*1.142 if country=="Poland" *adjustment made using data from EBRD macroeconomic indicators, since WDI has no gdppc for Poland in 1989" replace transyeargdp = 16319.7*1.012 if country=="Czech" *adjustment made using data from EBRD macroeconomic indicators, since WDI has no gdppc for Czech Rep in 1989" gen initexps = . replace initexps = export if year==transyear replace initexps = export if year==1990&country=="Poland" replace initexps = export if year==1990&country=="Czech" replace initexps = export if year==1991&country=="Croatia" replace initexps = export if year==1990&country=="Romania" replace initexps = export if year==1992&country=="Kazakhstan" bysort ccode: egen initialexps = max(initexps) replace initialexps = 28.84399569 if country=="Slovak" gen transgdpths = transyeargdp/1000 reg debrd8910 l21.ebrd2 yearscom l15.protang l15.isgenpct transgdpths initialexps distdues if year==2010, rob outreg using test7, se starlevel(10 5 1) merge *Adding average democray scores in first 18 years of transition gen tplus18 = 2007 if ee==1 replace tplus18=2008 if formyug==1 replace tplus18=2009 if fsu==1 gen dem2 = pol2norm replace dem2=. if yeartplus18 bysort ccode: egen avdem = mean(dem2) reg debrd8910 l21.ebrd2 yearscom l15.protang l15.isgenpct transgdpths initialexps avdem distdues if year==2010, rob outreg using test7, se starlevel(10 5 1) merge *Starting from each country’s transition year, I added up the annual shortfalls in real GDP per capita (relative to the transition year) in all years until output recovered to the initial level (or until 2010 if that came first). *need to fill in rgdpnapc for Czech and Slovak in 1989 since this is missing. *From EBRD Macroeconomic indicators, GDP per capita in 1989 was same as in 1990 in SR and was .012 higher in CR replace rgdpnapc = f.rgdpnapc*1.012 if year==1989&country=="Czech" replace rgdpnapc = f.rgdpnapc if year==1989&country=="Slovak" gen tyrgdp = rgdpnapc replace tyrgdp=. if year~=transyear bysort ccode: egen transyearrgdp = max(tyrgdp) xtset ccode year gen gap = transyearrgdp - rgdpnapc replace gap=. if gap<0 bysort ccode: egen totgapr=sum(gap) gen totcontractr = totgapr*100/transyearrgdp gen debrd2trans3 = . replace debrd2trans3 = ebrd2 - l3.ebrd2 if year==transyear+3 bysort ccode: egen ebtyplus3 = max(debrd2trans3) list country ebtyplus3 totcontractr if year==2010, clean noobs gen dum = . replace dum=2 if ebtyplus3>.40&ebtyplus3<. replace dum=1 if ebtyplus3>.25&ebtyplus3<.40 replace dum=0 if ebtyplus3<.25 mean(totcontractr) if year==2010, over (dum) *with Kaufmann and Kaliberda adjustments xtset ccode year gen totgdkk =. replace totgdkk= (100/(100-kk))*rgdpnapc gen tykkgdp = totgdkk replace tykkgdp=. if year~=transyear bysort ccode: egen transyeargdpkk = max(tykkgdp) gen gapkk = transyeargdpkk - totgdkk replace gapkk=. if gapkk<0 replace gapkk=. if yeartransyear+3 bysort ccode: egen totgapkk=sum(gapkk) gen totcontractkk = totgapkk*100/transyeargdpkk label var totcontractkk "total gdppc contraction inc unofficial in first three years of transition" gsort ebtyplus3 list country ebtyplus3 totcontractkk if year==2000, clean noobs mean(totcontractkk) if year==2010, over (dum) *Measure of avge unemp in 5yrs after transition year xtset ccode year bysort ccode: gen unem5 = (unemeb +l.unemeb+l2.unemeb+l3.unemeb+l4.unemeb)/5 replace unem5=. if year~=transyear+5 bysort ccode: egen unemtrans5 = max(unem5) list country ebtyplus3 unemtrans5 if year==2000, clean noobs mean(unemtrans5) if year==2010, over (dum) cor unemtrans5 ebtyplus3 if year==2010 *as of 1996, the extent of institutional reforms correlated very strongly and positively with the extent of liberalization and privatization (r = .77 and r = .85, respectively). cor libref privref instref if year==1996 *The Central and Eastern Eurobarometer polled the populations of 21 postcommunist countries repeatedly between 1990 and 1997. Even in the year of their country’s maximum GDP per capita contraction, *the majority in Albania, Slovenia, Romania, Poland, Estonia, Bulgaria, the Czech Republic, and Lithuania still said that “the creation of a free market economy, that is one largely free from state control,” was *right for their country’s future. Besides these, in Hungary, Latvia, and Macedonia more thought the free market economy was right for them than thought it was wrong. In the year of maximum contraction, more *respondents said that reforms were going “too slow” than said they were going “too fast” in all 13 countries for which data were available—on average, 34 percentage points more respondents thought reforms were too slow. gen gdpgap = rgdpnapc - transyearrgdp bysort ccode: egen mingdp = min(gdpgap) gen maxcontryear = . replace maxcontryear=1 if gdpgap == mingdp replace maxcontryear=. if transyearrgdp==. gsort -marketright list country marketright year if maxcontryear==1, noobs clean *Hungary *create index of rgdpnapc gen r89 = rgdpnapc replace r89 = . if year~=1989 bysort ccode: egen rgdp89 = max(r89) gen rgdpind = rgdpnapc/rgdp89 xtset ccode year list year rgdpind if country=="Hungary", noobs clean *If capture were associated with less reform in the period from the mid-1990s, we should expect to see a negative correlation between the index of state capture and the change in countries’ reform scores between 1995 and 1999. In fact, the correlation is slightly positive (r = .22), gen capture = . replace capture = 15.6666666666667 if country=="Albania" replace capture = 7.16666666666667 if country=="Armenia" replace capture = 41.1666666666667 if country=="Azerbaijan" replace capture = 8 if country=="Belarus" replace capture = 28.5 if country=="Bulgaria" replace capture = 26.6666666666667 if country=="Croatia" replace capture = 10.8333333333333 if country=="Czech" replace capture = 10.3333333333333 if country=="Estonia" replace capture = 24 if country=="Georgia" replace capture = 6.83333333333333 if country=="Hungary" replace capture = 12.6666666666667 if country=="Kazakhstan" replace capture = 29.3333333333333 if country=="Kyrgyz" replace capture = 29.8333333333333 if country=="Latvia" replace capture = 11.5 if country=="Lithuania" replace capture = 37 if country=="Moldova" replace capture = 11.5 if country=="Poland" replace capture = 21 if country=="Romania" replace capture = 31.5 if country=="Russia" replace capture = 23.8333333333333 if country=="Slovak" replace capture = 6.66666666666667 if country=="Slovenia" replace capture = 32.3333333333333 if country=="Ukraine" replace capture = 5.83333333333333 if country=="Uzbekistan" gen debrd4 = ebrd2 - l4.ebrd2 corr capture debrd4 if year==1999 *Simply comparing the average increase in reform score in years when a former high communist official was the head of the executive to years in which the head was not a communist *or member of a communist successor party and had not been a high communist official, there is almost no difference. mean debrd2, over(comformcom) *I also found no clear relationship between the speed of reform and the share of seats in the legislature held by communist parties and their successors. cor debrd2 comparsea *for more analysis of this, see below in the ECM estimations. *For Table 4 ECMs use "C:\Post soviet economics 2011\Budapest paper\Final files\for website\transition.dta", clear gen dlngdppc = lngdppc-l.lngdppc gen dlnoil = lnoil-l.lnoil gen eccrisis = 0 replace eccrisis = 1 if gdppc05ppp<.95*l.gdppc05ppp label var eccrisis "gdppc dropped more than 5%" gen dlnaid = lnaid-l.lnaid gen dneighebrd = neighebrd-l.neighebrd reg debrd2 l.ebrd2 l.pol2norm dpol2 if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4.doc", se starlevel(10 5 1) replace reg debrd2 l.ebrd2 l.pol2norm dpol2 l.dpol2 l.debrd2 if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 l.lngdppc l.dlngdppc i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 l.lngdppc l.dlngdppc l.lnoil l.dlnoil i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 eccrisis i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 l.interstatewar l.civilwar i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4b.doc", se starlevel(10 5 1) replace reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 l.lnaid l.dlnaid i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4b.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 l.neighebrd l.dneighebrd i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4b.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 pre5eu posteu i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4b.doc", se starlevel(10 5 1) merge *Granger causality reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4b.doc", se starlevel(10 5 1) merge reg dpol2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table4b.doc", se starlevel(10 5 1) merge *Table 5: What aspects of democracy? replace percent1 = . if percent1<0 replace percent1 = 30.89 if country=="Serbia"&year==2002 replace percent1 = 46.23 if country=="Serbia"&year==2003 replace percent1 = 27.38 if country=="Serbia"&year==2004 replace percent1 = 27.38 if country=="Serbia"&year==2005 replace percent1 = 87.6 if country=="Georgia"&year>1990&year<1995 replace percent1 = 77.6 if country=="Azerbaijan"&year==1998 replace percent1 = 89.2 if country=="Turkmenistan"&year==2007 replace percent1 = 56.9 if country=="Tajikistan"&year>1990&year<1994 replace percent1 = 58.3 if country=="Tajikistan"&year==1994 replace percent1 = 60.2 if country=="Lithuania"&year==1993 replace percent1 = 57 if country=="Croatia"&year==1992 gen perc100 = percent1/100 replace perc100=. if system~=0 gen gov1vote100 = gov1vote/100 gen govparties = . replace govparties = 1 if gov1seat>0&gov1seat<. replace govparties = govparties + 1 if gov2seat>0&gov2seat<. replace govparties = govparties + 1 if gov3seat>0&gov3seat<. replace govparties = govparties + govoth replace govparties=4 if country=="Serbia"&year>2003&year<2007 replace govparties=3 if country=="Serbia"&year==2007 gen cpseats100 = comparsea/100 gen retcom = comformcom replace retcom = 0 if comformcom==1&lastcomnot==1 label var retcom "exec = communist returning after a non-communist has served" *leader turnover is my construction (not Archigos, which does not always correspond) *what components of the Polity score? gen exisel = 0 replace exisel=1 if xrcomp==3 replace exisel=. if xrcomp==. label var exisel "Chief executives are typically chosen in or through competitive elections matching 2+ parties or candidates" gen dexisel = exisel-l.exisel gen exnorm = (exconst-1)*1/6 gen dexnorm= exnorm-l.exnorm gen leader2 = leader replace leader2="" if year1989&year<1992 gen gaidar=0 replace gaidar=1 if country=="Russia"&year==1992 *so Jaruzelski is replaced by Balcerowicz gen lnumyear=lnum*10000+year sort lnumyear bysort lnum: gen tenlead=sum(one) replace tenlead=. if lnum==. xtset ccode year reg debrd2 l.ebrd2 l.debrd2 l.exisel l.dexisel l.exnorm l.dexnorm interstatewar i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5.doc", se starlevel(10 5 1) replace reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar l.leaderturn i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5.doc", se starlevel(10 5 1) merge *frequency of elections (my variable) reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar yrssinceexel i.year i.ccode if year<2011&year>transyear & system==0, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5.doc", se starlevel(10 5 1) merge *note this is only presidential systems, elections for president *just parl systems reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar yrssincelegel i.year i.ccode if year<2011&year>transyear & system==2, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5.doc", se starlevel(10 5 1) merge *more competitive elections * the votes going to winner in first round of presidential election (DPI) reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar perc100 i.year i.ccode if year<2011&year>transyear & system==0, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5.doc", se starlevel(10 5 1) merge *the share going to largest government party in leg election in parl system (DPI) reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar gov1vote100 i.year i.ccode if year<2011&year>transyear&system==2, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5b.doc", se starlevel(10 5 1) replace *broad coalition (DPI) reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar l.govparties i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5b.doc", se starlevel(10 5 1) merge *old communist elite reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar lastcomnot retcom i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5b.doc", se starlevel(10 5 1) merge reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar lastcomnot retcom cpseats100 i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5b.doc", se starlevel(10 5 1) merge *polarization gen pol2pol = polconti*pol2norm reg debrd2 l.ebrd2 l.pol2norm l.dpol2 l.debrd2 interstatewar l.polconti l.pol2pol i.year i.ccode if year<2011&year>transyear, cluster(ccode) outreg using "C:\Post soviet economics 2011\Budapest paper\table5b.doc", se starlevel(10 5 1) merge *for Table 6, leaders *individual leaders replace leader2 = "Balcerowicz*" if country=="Poland"&year>1989&year<1992 replace leader2 = "Gaidar*" if country=="Russia"&year==1992 bysort leader2: egen leaddebrd = mean(debrd2) replace leaddebrd = . if leader2=="" sort leader2 year gen case = _n tsset case gen lleaddebrd = l.leaddebrd gsort -leaddebrd list leader2 leaddebrd if leaddebrd~=lleaddebrd, clean noobs xtset ccode year *create dummies for leader xi: reg debrd2 i.leader2 xtset ccode year reg debrd2 l.ebrd2 l.pol2norm l.dpol2 interstatewar cpseats100 _Ileader2_2 i.year i.ccode if year<2011&year>transyear, cluster(ccode) regsave _Ileader2_2 using "C:\Post soviet economics 2011\resultswithcfe.dta", tstat pval replace forvalues number = 3/132 { reg debrd2 l.ebrd2 l.pol2norm l.dpol2 interstatewar cpseats100 _Ileader2_`number' i.year i.ccode if year<2011&year>transyear, cluster(ccode) capture regsave _Ileader2_`number' using "C:\Post soviet economics 2011\resultswithcfe.dta", append tstat pval } save "C:\Post soviet economics 2011\Budapest paper\Final files\transition.dta", replace describe _Il* use "C:\Post soviet economics 2011\resultswithcfe.dta", clear gsort -coef