capture log close log using "02_Fairlie_selbst_Ost.log", replace display "02 Fairlie selbst programmiert" *************************************************************** *************************************************************** *** Titel des Projekts: Estimating the causal effect of collective bargaining on the wage distribution *** Datengrundlage: Gehalt- und Lohnstrukturerhebung (GLS) 2001 und Verdienststrukturerhebung (VSE) 2006 *** *** Dateiname des Programmcodes: 02_Fairlie_Ost.do *** Dateiname des Log-Files: 02_Fairlie_selbst_Ost.log *** Dateiname des ado-files: 02_Fairlieselbst_ost.ado *** 02_Fairlieselbst_ost_reversed.ado *** von: Katrin Sommerfeld *** E-Mail: sommerfeld@zew.de *** Tel: 0621 - 1235 216 *** *** *** Grundriss des Programms: *** *** ********************************************************* * * 02 _ Fairlie-Zerlegung selbst programmiert * Hier für Ost-Deutschland * * Zuerst gemeinsamen Datensatz erstellen 2001+2006 * Dann Analysen durchführen für: * A: Männer * B: Frauen * je: 1. Deskriptive Statistiken * 1.a) Probits mit marginalen Effekten * 1.b) Merkmalstabellen * 1.c) Tarifbindungsquoten für unterschiedliche Subgruppen * 2. Fairlie-Zerlegung entweder normal oder reversed * ********************************************************** * Steuerung der Bildschirmausgabe: clear set more off version //11.2 set rmsg on do "02_Fairlieselbst_ost.ado" do "02_Fairlieselbst_ost_reversed.ado" global varlist "educ_low educ_high educ_na age tenure size1 size2 size3 size4 male region8 region10 region11 region12 w1 w2 w3 w4 w5 w6 w7 w8 w10 w11 w12 w13 w14 w15 w16 w17 w18 w19 w20 w21 w22 w23 w24 w25 w26 w27 w28 " // male public * demeaned varlist: global varlist_dm "educ_low_dm educ_high_dm educ_na_dm age_dm tenure_dm size1_dm size2_dm size3_dm size4_dm male_dm region8_dm region10_dm region11_dm region12_dm w1_dm w2_dm w3_dm w4_dm w5_dm w6_dm w7_dm w8_dm w10_dm w11_dm w12_dm w13_dm w14_dm w15_dm w16_dm w17_dm w18_dm w19_dm w20_dm w21_dm w22_dm w23_dm w24_dm w25_dm w26_dm w27_dm w28_dm " // male_dm public_dm * Varlist with interactions with d2006: global varlist_d2006 "educ_low_d2006 educ_high_d2006 educ_na_d2006 age_d2006 tenure_d2006 size1_d2006 size2_d2006 size3_d2006 size4_d2006 male_d2006 region8_d2006 region10_d2006 region11_d2006 region12_d2006 w1_d2006 w2_d2006 w3_d2006 w4_d2006 w5_d2006 w6_d2006 w7_d2006 w8_d2006 w10_d2006 w11_d2006 w12_d2006 w13_d2006 w14_d2006 w15_d2006 w16_d2006 w17_d2006 w18_d2006 w19_d2006 w20_d2006 w21_d2006 w22_d2006 w23_d2006 w24_d2006 w25_d2006 w26_d2006 w27_d2006 w28_d2006 " // male_d2006 public_d2006 * Varlist for descriptives global desclist "educ_low educ_med educ_high educ_na age tenure size1 size2 size3 size4 size5 male region8 region9 region10 region11 region12 w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 w15 w16 w17 w18 w19 w20 w21 w22 w23 w24 w25 w26 w27 w28 " // male public * Varlist for Dummies for Tarifbindungsquoten global dummylist "educ_low educ_med educ_high educ_na size1 size2 size3 size4 size5 region8 region9 region10 region11 region12 w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 w15 w16 w17 w18 w19 w20 w21 w22 w23 w24 w25 w26 w27 w28 " // male public * Varlist with interactions with d2006: global varlist_d2006 "educ_low_d2006 educ_high_d2006 educ_na_d2006 age_d2006 tenure_d2006 size1_d2006 size2_d2006 size3_d2006 size4_d2006 male_d2006 region8_d2006 region10_d2006 region11_d2006 region12_d2006 w1_d2006 w2_d2006 w3_d2006 w4_d2006 w5_d2006 w6_d2006 w7_d2006 w8_d2006 w10_d2006 w11_d2006 w12_d2006 w13_d2006 w14_d2006 w15_d2006 w16_d2006 w17_d2006 w18_d2006 w19_d2006 w20_d2006 w21_d2006 w22_d2006 w23_d2006 w24_d2006 w25_d2006 w26_d2006 w27_d2006 w28_d2006 " // male_d2006 public_d2006 * global ivarlist_dm_d2006 "c.educ_low_dm#d2006 c.educ_high_dm#d2006 c.educ_na_dm#d2006 c.age_dm#d2006 c.tenure_dm#d2006 c.size1_dm#d2006 c.size2_dm#d2006 c.size3_dm#d2006 c.size4_dm#d2006 c.male_dm#d2006 c.region8_dm#d2006 c.region10_dm#d2006 c.region11_dm#d2006 c.region12_dm#d2006 c.w1_dm#d2006 c.w2_dm#d2006 c.w3_dm#d2006 c.w4_dm#d2006 c.w5_dm#d2006 c.w6_dm#d2006 c.w7_dm#d2006 c.w8_dm#d2006 c.w10_dm#d2006 c.w11_dm#d2006 c.w12_dm#d2006 c.w13_dm#d2006 c.w14_dm#d2006 c.w15_dm#d2006 c.w16_dm#d2006 c.w17_dm#d2006 c.w18_dm#d2006 c.w19_dm#d2006 c.w20_dm#d2006 c.w21_dm#d2006 c.w22_dm#d2006 c.w23_dm#d2006 c.w24_dm#d2006 c.w25_dm#d2006 c.w26_dm#d2006 c.w27_dm#d2006 c.w28_dm#d2006 " // male_d2006 public_d2006 global ivarlist_d2006 "educ_low#d2006 educ_high#d2006 educ_na#d2006 c.age#d2006 c.tenure#d2006 size1#d2006 size2#d2006 size3#d2006 size4#d2006 c.male#d2006 region8#d2006 region10#d2006 region11#d2006 region12#d2006 w1#d2006 w2#d2006 w3#d2006 w4#d2006 w5#d2006 w6#d2006 w7#d2006 w8#d2006 w10#d2006 w11#d2006 w12#d2006 w13#d2006 w14#d2006 w15#d2006 w16#d2006 w17#d2006 w18#d2006 w19#d2006 w20#d2006 w21#d2006 w22#d2006 w23#d2006 w24#d2006 w25#d2006 w26#d2006 w27#d2006 w28#d2006 " // male_d2006 public_d2006 use "arbeitnehmer2006_rel_v2.dta", clear describe qui do "00a_Datenaufbereitung2006.do" qui do "00b_Datenaufbereitung2001.do" ******************************************************************* *** Zusammenfügen der Datensätze von 2001 und 2006 display "*** 2001 ***" use "zusammen2001_rel_v5.dta", clear describe tab use tab use [aweight=weight] keep if use==1 keep if east==1 count gen cover = (tarifart2==1 | tarifart2==2) label var cover "Collective bargaining coverage of employer" gen coverind = (general==1 | firm==1) label var coverind "Collective bargaining coverage of individual employee" * Bildungsvariable: replace educ_na = 1 if (educ_low==0 & educ_med==0 & educ_high==0) tabstat cover if public==1 , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tab public drop if public==1 tab sex tab sex, nol tabstat cover , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tabstat cover if sex==1 , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tabstat cover if sex==0 , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tab sex cover tab sex cover [iweight=weight] * summarize, aber ohne Einzelwerte: display "Männer 2001" foreach var in cover $desclist { tabstat `var' if sex==0 [aweight=weight], stat(n mean sd p50) } display "Frauen 2001" foreach var in cover $desclist { tabstat `var' if sex==1 [aweight=weight], stat(n mean sd p50) } * cap gen year=2001 keep year cover $varlist educ_med size5 region9 w9 public sex weight compress save "zusammen2001_fairlie1_ost.dta", replace ******************************************************************* display "*** 2006 ***" use "zusammen2006_rel_v5.dta", clear describe tab use tab use [aweight=weight] keep if use==1 keep if east==1 count gen cover = (tarifart2==1 | tarifart2==2) label var cover "Collective bargaining coverage of employer" gen coverind = (general==1 | firm==1) label var coverind "Collective bargaining coverage of individual employee" * Bildungsvariable: replace educ_na = 1 if (educ_low==0 & educ_med==0 & educ_high==0) tabstat cover if public==1 , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tab public drop if public==1 tab sex tab sex, nol tabstat cover , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tabstat cover if sex==1 , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tabstat cover if sex==0 , stat(n mean sd p5 p10 p25 p50 p75 p90 p95) tab sex cover tab sex cover [iweight=weight] * summarize, aber ohne Einzelwerte: display "Männer 2006" foreach var in cover $desclist { tabstat `var' if sex==0 [aweight=weight], stat(n mean sd p50) } display "Frauen 2006" foreach var in cover $desclist { tabstat `var' if sex==1 [aweight=weight], stat(n mean sd p50) } * cap gen year=2006 keep year cover $varlist educ_med size5 region9 w9 public sex weight compress save "zusammen2006_fairlie1_ost.dta", replace append using "zusammen2001_fairlie1_ost.dta", generate(indicator) count describe tab year indicator gen d2006 = (year==2006) display "*** Ohne Öffentlichen Sektor ***" drop if public==1 compress save "fairlie1_ost.dta", replace tab cover, m tab cover sex if year==2001 [aweight=weight], col tab cover sex if year==2006 [aweight=weight], col ************************************************** * A: Männer: ******************* display "Männer" keep if sex==0 probit cover $varlist foreach var in $varlist { qui sum `var' if year==2001 & e(sample) // hier nur das Mittel aus dem Jahr 2001 verwenden qui gen `var'_dm = `var'-r(mean) qui gen `var'_d2006 = `var'_dm * d2006 } * **** 1. Deskriptive Statistiken **** * 1.a) Probit mit MEs * Probit-Schätzung mit MEs separat nach Jahr, hier keine Interaktionen display "Year 2001" display "1. Probit-Schätzung mit MEs, hier keine Interaktionen, 2001:" probit cover $varlist_dm if year==2001 [pweight=weight] margins, dydx(*) display "Year 2006" display "1. Probit-Schätzung mit MEs, hier keine Interaktionen, 2006:" probit cover $varlist_dm if year==2006 [pweight=weight] margins, dydx(*) qui probit cover $ivarlist_dm d2006 $ivarlist_dm_d2006 [pweight=weight] * 1.b) Desc Stat für Tabelle 1 tab cover d2006 if e(sample) [aweight=weight], col * * 1.b) Desc Stat für Tabelle 3 foreach var in cover $desclist d2006 { tabstat `var' if year==2001 & e(sample) [aweight=weight] , stat(n mean sd p50 ) tabstat `var' if year==2006 & e(sample) [aweight=weight] , stat(n mean sd p50 ) } * 1.c) Tarifbindungsquoten innerhalb von Teilgruppen für Tabelle 4 display "Tarifbindung 2001" foreach var in $dummylist { tabstat cover if year==2001 & e(sample) [aweight=weight] , by(`var') } display "Tarifbindung 2006" foreach var in $dummylist { tabstat cover if year==2006 & e(sample) [aweight=weight] , by(`var') } * *** 2. Fairlie **** * forward decomposition fairlieselbst * backward decomposition: fairlieselbstrev ***************************************** * Frauen: *************** display "Frauen" * 0. Vorbereitung use "fairlie1_ost.dta", clear keep if sex==1 scalar drop _all qui probit cover $varlist foreach var in $varlist { qui sum `var' if year==2001 & e(sample) // hier nur das Mittel aus dem Jahr 2001 verwenden qui gen `var'_dm = `var'-r(mean) qui gen `var'_d2006 = `var'_dm * d2006 } * **** 1. Deskriptive Statistiken **** * 1.a) Probit mit MEs * Probit-Schätzung mit MEs separat nach Jahr, hier keine Interaktionen display "Year 2001" display "1. Probit-Schätzung mit MEs, hier keine Interaktionen, 2001:" probit cover $varlist_dm if year==2001 [pweight=weight] margins, dydx(*) display "Year 2006" display "1. Probit-Schätzung mit MEs, hier keine Interaktionen, 2006:" probit cover $varlist_dm if year==2006 [pweight=weight] margins, dydx(*) qui probit cover $ivarlist_dm d2006 $ivarlist_dm_d2006 [pweight=weight] * 1.b) Desc Stat für Tabelle 1 tab cover d2006 if e(sample) [aweight=weight], col * * 1.b) Desc Stat für Tabelle 3 foreach var in cover $desclist d2006 { tabstat `var' if year==2001 & e(sample) [aweight=weight] , stat(n mean sd p50 ) tabstat `var' if year==2006 & e(sample) [aweight=weight] , stat(n mean sd p50 ) } * 1.c) Tarifbindungsquoten innerhalb von Teilgruppen für Tabelle 4 display "Tarifbindung 2001" foreach var in $dummylist { tabstat cover if year==2001 & e(sample) [aweight=weight] , by(`var') } display "Tarifbindung 2006" foreach var in $dummylist { tabstat cover if year==2006 & e(sample) [aweight=weight] , by(`var') } * *** 2. Fairlie **** * forward decomposition: fairlieselbst * backward decomposition: fairlieselbstrev log close exit