/* Workfile below constructed from 2 files: 1) PRIMA-files (PRIMA-cohorten Basisonderwijs 1995-2005), open access: http://www.dans.knaw.nl/en/search 2) Twin-files in PRIMA, we asked the constructers of PRIMA to give us the twincodes: those with same name and date of birth. These files were given confidentially and are available upon request by sending an email to sbg@cpb.nl or to the constructers of PRIMA (Kohnstamm institute) By matching these two files one could easily destill our workfile below: twins that go to the same school but are assigned to different class rooms. Class rooms in the Netherlands are often given names like 2A, 2B (for different classrooms in grade 2) */ use "M:\p_onderwijs\Individueel\Sander\SanderG\Promotie\workfile.dta", clear cd "M:\p_onderwijs\Individueel\Sander\SanderG\Promotie" sysdir set PLUS "M:/p_onderwijs/Individueel/Sander/SanderG/Promotie/stata/ado/" ssc install outreg2, replace /*Important: D stands for Difference between twins, hence twin j- twin j'*/ /*Codes here and in workfile are all in Dutch. PRIMA consists of a lot variables, but I will only translate those in English that are used in this dofile, hence our paper. Only these are necessary to replicate the results outlined in the paper*/ *taal=test score reading *reken=test score math *taal_vor=previous test score reading *reken_vor=previous test score math *vrouw_doc=teacher is female *meerdere_grdoc_doc=class room is taught by two (parttime) teachers *combi_klas_doc=class room that mixes grades *t_klas_doc=class size *Ep_meiden_adm=% girls *Ep_ned_adm=% natives *jaren_werkzaam_doc=experience of teacher in years *groepnr=grade *schoolnr=school *groepsna=class room code /*Imputeren covariaten*/ replace Dtaal_vor=0 if Dtaal_vor==. & groepnr==2 /*Imputation of twin difference in previous reading test score grade 2*/ replace Dreken_vor=0 if Dreken_vor==. & groepnr==2 /*Imputation of twin difference in previous math test score grade 2*/ replace Dvrouw_doc=0 if Dvrouw_doc==. /*Imputation of twin difference in having female teacher*/ replace Dmeerdere_grdoc_doc=0 if Dmeerdere_grdoc_doc==. /*Imputation of twin difference in having multiple teachers*/ replace Dcombi_klas_doc=0 if Dcombi_klas_doc==. /*Imputation of twin difference in class room that mixes grades*/ replace Dmeid=0 if Dmeid==. /*Imputation of twin difference in gender*/ replace Dt_klas_doc=0 if Dt_klas_doc==. /*Imputation of twin difference in class size*/ replace DEp_meiden_adm=0 if DEp_meiden_adm==. /*Imputation of twin difference in % girls*/ replace DEp_ned_adm=0 if DEp_ned_adm==. /*Imputation of twin difference in % natives*/ merge m:1 schoolnr using "M:\p_onderwijs\Individueel\Sander\SanderG\Promotie\lijstje_scholen.dta" /*This is an additional file for schools that score above the national average, can be made from the PRIMA-files*/ keep if _merge==3 *non-lineair specifications gen erv2=jaren_werkzaam_doc^2 bysort twins: gen Derv2=erv2-erv2[_n+1] /* gen lnerv=ln(jaren_werkzaam_doc+1) bysort twins: gen Dlnerv=lnerv-lnerv[_n+1] gen erv_0_5=1 if jaren_werkzaam_doc>=0 & jaren_werkzaam_doc<=5 & jaren_werkzaam_doc!=. replace erv_0_5=0 if erv_0_5==. replace erv_0_5=. if jaren_werkzaam_doc==. gen spline_0_5=jaren_werkzaam_doc*erv_0_5 bysort twins: gen Derv_0_5=erv_0_5-erv_0_5[_n+1] bysort twins: gen Dspline_0_5=spline_0_5-spline_0_5[_n+1] gen erv_6_15=1 if jaren_werkzaam_doc>=6 & jaren_werkzaam_doc<=15 & jaren_werkzaam_doc!=. replace erv_6_15=0 if erv_6_15==. replace erv_6_15=. if jaren_werkzaam_doc==. gen spline_6_15=(jaren_werkzaam_doc-6)*erv_6_15 bysort twins: gen Derv_6_15=erv_6_15-erv_6_15[_n+1] bysort twins: gen Dspline_6_15=spline_6_15-spline_6_15[_n+1] gen erv_16plus=1 if jaren_werkzaam_doc>=16 & jaren_werkzaam_doc!=. replace erv_16plus=0 if erv_16plus==. replace erv_16plus=. if jaren_werkzaam_doc==. gen spline_16plus=(jaren_werkzaam_doc-16)*erv_16plus bysort twins: gen Derv_16plus=erv_16plus-erv_16plus[_n+1] bysort twins: gen Dspline_16plus=spline_16plus-spline_16plus[_n+1] */ /*Tabel I*/ egen hulp1=max(Dtaal), by(twins) egen hulp2=max(Djaren_werkzaam_doc), by(twins) sum taal reken taal_vor reken_vor meid jaren_werkzaam_doc vrouw_doc meerdere_grdoc_doc combi_klas_doc t_klas_doc Ep_meiden_adm Ep_ned_adm if hulp1!=. & hulp2!=. & groepnr==2 sum taal reken taal_vor reken_vor meid jaren_werkzaam_doc vrouw_doc meerdere_grdoc_doc combi_klas_doc t_klas_doc Ep_meiden_adm Ep_ned_adm if hulp1!=. & hulp2!=. & groepnr!=2 sum taal reken taal_vor reken_vor meid jaren_werkzaam_doc vrouw_doc meerdere_grdoc_doc combi_klas_doc t_klas_doc Ep_meiden_adm Ep_ned_adm if hulp1!=. & hulp2!=. *totale sample* *use "M:\p_onderwijs\Individueel\Sander\SanderG\Promotie\exttwin_totaal.dta", clear* sum taal reken taal_vor reken_vor meid jaren_werkzaam_doc vrouw_doc meerdere_grdoc_doc combi_klas_doc t_klas_doc Ep_meiden_adm Ep_ned_adm if taal!=. /*Tabel II*/ sum Dtaal Dreken Dmeid Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dt_klas_doc DEp_meiden_adm DEp_ned_adm if Dtaal!=. & Djaren_werkzaam_doc!=., detail /*Tabel III*/ reg Dtaal Djaren_werkzaam_doc if groepnr==2, nocons vce(cluster schoolnr) outreg2 using "TabelIII", replace bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc if groepnr==2, nocons vce(cluster schoolnr) outreg2 using "TabelIII", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc if groepnr==2, nocons vce(cluster schoolnr) outreg2 using "TabelIII", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc if groepnr==2, nocons vce(cluster schoolnr) outreg2 using "TabelIII", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==2, nocons vce(cluster schoolnr) outreg2 using "TabelIII", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==2, nocons vce(cluster schoolnr) outreg2 using "TabelIII", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm , nocons vce(cluster schoolnr) outreg2 using "TabelIII", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm, nocons vce(cluster schoolnr) outreg2 using "TabelIII", bdec(3) sdec(3) /*Tabel IV*/ reg Dtaal Djaren_werkzaam_doc, nocons vce(cluster schoolnr) outreg2 using "TabelIV", replace bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc, nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm, nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm, nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc if Dtaal_vor!=., nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc if Dreken_vor!=., nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if Dtaal_vor!=., nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if Dreken_vor!=., nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dtaal_vor if Dtaal_vor!=., nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dreken_vor if Dreken_vor!=., nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dtaal_vor Dt_klas_doc DEp_meiden_adm DEp_ned_adm, nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dreken_vor Dt_klas_doc DEp_meiden_adm DEp_ned_adm, nocons vce(cluster schoolnr) outreg2 using "TabelIV", bdec(3) sdec(3) /*Tabel V*/ *Panel A* reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==4, nocons vce(cluster schoolnr) outreg2 using "TableV", replace bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==4, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==6, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==6, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==8, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if groepnr==8, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) *Panel B* egen minerv=min(jaren_werkzaam_doc), by(twins) egen maxerv=max(jaren_werkzaam_doc), by(twins) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if minerv>=7 & minerv!=., nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if minerv>=7 & minerv!=., nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if maxerv<=28, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if maxerv<=28, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if schoolgem_taal>0, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if schoolgem_taal>0, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) *Panel C* reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if jaar==1994 | jaar==1996, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if jaar==1994 | jaar==1996, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if jaar==1998 | jaar==2000, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if jaar==1998 | jaar==2000, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if jaar==2002 | jaar==2004, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if jaar==2002 | jaar==2004, nocons vce(cluster schoolnr) outreg2 using "TableV", bdec(3) sdec(3) /*Comment 10, referee 4*/ reg Dtaal Djaren_werkzaam_doc if Dtaal_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3) replace reg Dreken Djaren_werkzaam_doc if Dreken_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if Dtaal_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dt_klas_doc DEp_meiden_adm DEp_ned_adm if Dreken_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dtaal_vor if Dtaal_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dreken_vor if Dreken_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3) reg Dtaal Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dtaal_vor Dt_klas_doc DEp_meiden_adm DEp_ned_adm if Dtaal_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3) reg Dreken Djaren_werkzaam_doc Dvrouw_doc Dmeerdere_grdoc_doc Dcombi_klas_doc Dmeid Dreken_vor Dt_klas_doc DEp_meiden_adm DEp_ned_adm if Dreken_vor!=. & groepnr!=2, nocons vce(cluster schoolnr) outreg2 using "TabelComment10", bdec(3) sdec(3)