/* ***************************************************************************************************************************************************** Replication do-file manuscript ***************************************************************************************************************************************************** Ecologies of ideologies. Explaining party entry and exit in West-European parliaments, 1945-2013 By: Marc van de Wardt, Joost Berkhout & Floris Vermeulen */ ***************************************************************************************************************************************************** //PARTY EXIT ANALYSES ***************************************************************************************************************************************************** use "[Working directory]\Replication data\exit replication data.dta", clear /*Operationalizations*/ ***************************************************************************************************************************************************** *party_id --> Party identification number from Parlgov *death --> 1 Party will not reappear in any future election, 0 Party will reappear *left --> Party is located in left-wing niche *centrist --> Party is located in centrist niche *right --> Party is located in right-wing niche *leftdens --> Number of parties in the left-wing niche *centristdens --> Number of parties in the centrist niche *rightdens --> Number of parties in the right-wing niche *agesquareroot --> The square root of the number of years a party has existed since its foundation *lsq --> Gallagher (1991, Electoral Studies) least square index of party system disproportionality *eneg --> Fearon index of effective number of ethnic groups (from Clark and Golder 2006 CPS replication dataset) *ENPF_left --> The effective number of party families within the left-wing niche *ENPF_centrist --> The effective number of party families within the centrist niche *ENPF_right --> The effective number of party families within the right-wing niche *ENMI_left --> The effective number of issues emphasized by parties within the left-wing niche *ENMI_centrist --> The effective number of issues emphasized by parties within the centrist niche *ENMI_right --> The effective number of issues emphasized by parties within the right-wing niche *vot_left --> The percentage of the electorate placing themselves within the left-wing niche *vot_centrist --> The percentage of the electorate placing themselves within the centrist niche *vot_right --> The percentage of the electorate placing themselves within the right-wing niche *reg_cost --> Registration costs (from Tavits 2006 Party Politics replication dataset) *party_fin --> Public financing of parties (from Tavits 2006 Party Politics replication dataset) *ln_petit --> Petition logged (from Tavits 2006 Party Politics replication dataset) *integration --> Degree of corporatism (from Tavits 2006 Party Politics replication dataset) *duradem --> Number of democratic elections since World War 2 *fam --> party family *zleft_right --> Average standardized left-right position of party ******************************************************************************************************************************************************* /*Figure 1*/ gen niche=1 if left==1 replace niche=2 if centrist==1 replace niche=3 if right==1 lab def niche 1 "left-wing" 2 "centrist" 3 "right-wing" label values niche niche graph drop _all hist fam if niche==1, freq discrete xlabel(1 2 3 4 5 6 7 8 9 10 11, valuelabel) xlabel(, labsize(small) angle(45)) graphregion(fcolor(white)) xtitle("") title("Left-wing niche") name(one, replace) hist fam if niche==2, freq discrete xlabel(1 2 3 4 5 6 7 8 9 10 11, valuelabel) xlabel(, labsize(small) angle(45)) graphregion(fcolor(white)) xtitle("") title("Centrist niche") name(two, replace) hist fam if niche==3, freq discrete xlabel(1 2 3 4 5 6 7 8 9 10 11, valuelabel) xlabel(, labsize(small) angle(45)) graphregion(fcolor(white)) xtitle("") title("Right-wing niche") name(three, replace) graph box zleft_right, over(niche) ytitle("Standardized left-right position") graphregion(fcolor(white)) name(four, replace) graph combine one two three four, graphregion(fcolor(white)) altshrink /*Drop final available elections*/ *The final available elections for each country are excluded from the party exit analyses, as logically, we cannot know yet for which parties these elections turned out to be their last. Put differently, the dependent variable would always equal 0 if the final available elections would be included. drop if elec_year==final_election_parlgov /*Define cross-sections and time variable*/ tsset party_id counter /*Get results from Table 1*/ //note: Model 1 and model 2 explain party exit among left-wing parties, model 3 and 4 exit among centrist parties and model 5 and 6 exit among right-wing parties. Therfore, the model should be run by subsample, which we do by means of the "if" comamnd in the code below. //Table 1, model 1 logistic death leftdens centristdens rightdens agesquareroot lsq eneg ENPF_left ENMI_left if left==1, robust cluster(party_id) //Table 1, model 2 logistic death leftdens centristdens rightdens agesquareroot lsq eneg ENPF_left ENMI_left vot_left reg_cost party_fin ln_petit integration duradem if left==1 , robust cluster(party_id) //Table 1, model 3 logistic death leftdens centristdens rightdens agesquareroot lsq eneg ENPF_centrist ENMI_centrist if centrist==1 , robust cluster(party_id) //Table 1, model 4 logistic death leftdens centristdens rightdens agesquareroot lsq eneg ENPF_centrist ENMI_centrist vot_centrist reg_cost party_fin ln_petit integration duradem if centrist==1 , robust cluster(party_id) //Table 1, model 5 logistic death leftdens centristdens rightdens agesquareroot lsq eneg ENPF_right ENMI_right if right==1 , robust cluster(party_id) //Table 1, model 6 logistic death leftdens centristdens rightdens agesquareroot lsq eneg ENPF_right ENMI_right vot_right reg_cost party_fin ln_petit integration duradem if right==1 , robust cluster(party_id) ***************************************************************************************************************************************************** //PARTY ENTRY ANALYSES ***************************************************************************************************************************************************** use "[Working directory]\Replication data\entry replication data.dta", clear /*Operationalizations*/ ***************************************************************************************************************************************************** *cntry --> country *cntry_elec --> election id *elec_year --> year of election *totleftbirth --> Number of newly entered parties in left-wing niche *totcentristbirth --> Number of newly entered parties in centrist niche *totrightbirth --> Number of newly entered parties in right-wing niche *lleftdens --> Number of parties in the left-wing niche during previous election *lcentristdens --> Number of parties in the centrist niche during previous election *lrightdens --> Number of parties in the right-wing niche during previous election *lsq --> Gallagher (1991, Electoral Studies) least square index of party system disproportionality *eneg --> Fearon index of effective number of ethnic groups (from Clark and Golder 2006 CPS replication dataset) *lENPF_left --> The effective number of party families within the left-wing niche during previous election *lENPF_centrist --> The effective number of party families within the centrist niche during previous election *lENPF_right --> The effective number of party families within the right-wing niche during previous election *lENMI_left --> The effective number of issues emphasized by parties within the left-wing niche during previous election *lENMI_centrist --> The effective number of issues emphasized by parties within the centrist niche during previous election *lENMI_right --> The effective number of issues emphasized by parties within the right-wing niche during previous election *vot_left --> The percentage of the electorate placing themselves within the left-wing niche in the year before the election *vot_centrist --> The percentage of the electorate placing themselves within the centrist niche in the year before the election *vot_right --> The percentage of the electorate placing themselves within the right-wing niche in the year before the election *reg_cost --> Registration costs (from Tavits 2006 Party Politics replication dataset) *party_fin --> Public financing of parties (from Tavits 2006 Party Politics replication dataset) *ln_petit --> Petition logged (from Tavits 2006 Party Politics replication dataset) *integration --> Degree of corporatism (from Tavits 2006 Party Politics replication dataset) *duradem --> Number of democratic elections since World War 2 ***************************************************************************************************************************************************** /*Define cross-sections and time variable*/ tsset cntry cntry_elec //Table 2, model 7 xtpoisson totleftbirth lleftdens lcentristdens lrightdens lsq eneg lENPF_left lENMI_left, irr //Table 2, model 8 xtpoisson totleftbirth lleftdens lcentristdens lrightdens lsq eneg lENPF_left lENMI_left vot_left reg_cost party_fin ln_petit integration duradem, irr //Table 2, model 9 xtnbreg totcentristbirth lleftdens lcentristdens lrightdens lsq eneg lENPF_centrist lENMI_centrist, irr /*note: dispersion parameter (alpha) signifcantly differs from zero, so we opt for xtnbreg instead of xtpoisson, as the latter cannot deal with over-dispersion (see Hausman et al. 1984) To verify, run: xtpoisson totcentristbirth lleftdens lcentristdens lrightdens lsq eneg lENPF_centrist lENMI_centrist, irr When the overdispersion parameter is zero the negative binomial distrbution is equivalent to a poisson distribution. In this case, alpha is significantly different from zero (p=.041) and thus reinforces that the poisson distribution is not appropriate. */ //Table 2, model 10 xtpoisson totcentristbirth lleftdens lcentristdens lrightdens lsq eneg lENPF_centrist lENMI_centrist vot_centrist reg_cost party_fin ln_petit integration duradem, irr //Table 2, model 11 xtpoisson totrightbirth lleftdens lcentristdens lrightdens lsq eneg lENPF_right lENMI_right, irr //Table 2, model 12 xtpoisson totrightbirth lleftdens lcentristdens lrightdens lsq eneg lENPF_right lENMI_right vot_right reg_cost party_fin ln_petit integration duradem, irr