* Calcolo l'età all'avvio del contratto gen eta=age( DataNascita, DataInizio) *calcolo la durata del contratto DataInizio DataFinePrev DataFine gen durata_contr=datediff(DataInizio, DataFinePrev, "month") rename durata_contr durata_prev * voglio sapere se il tipo di contratto rename T tipocontr tab tipocontr tab tipocontr if durata_prev==. *fare il sort del dataset in base all'individuo sort ID_Cittadino * trasformo in numerico il dato di genere: M=0 , F=1 gen sesso=0 if GenereMF=="M" replace sesso=1 if sesso==. sort ID_Cittadino DataInizio order DataInizio DataFinePrev DataFine, after (ID_Cittadino) * calcolo la quota dei contratti a tempo indeterminato sul totale gen indetnum=1 if descr_contratto=="LAVORO A TEMPO INDETERMINATO" replace indetnum=0 if indetnum==. bysort anno: egen tot_indet=total(indetnum) gen Qindet_2018=(tot_indet/112020) if anno==2018 gen Qindet_2019=(tot_indet/113578) if anno==2019 ************************************************************************************** DIFFERENCE IN DIFFERENCE ************************************************************************************** ** Esempi pronti su come applicare il metodo di stima DiffinDiff ai dati (vedi volume stata) use "C:\Users\5122\Documents\DIDATTICA 2023_2024\ECONOMIA DEL LAVORO E RISORSE UMANE\Laboratorio di Economia\Dati LM\CardKrueger1994.dta" *voglio capire cosa ci sia nel dataset e uso describe describe * vediamo ora le caratteristiche del dataset, devo fare una prima analisi statistica summarize id t treated fte bk kfc roys wendy *** QUESTA SONO COMANDI PER UNA VERSIONE PRECEDENTE DI STATA, POTETE USARE PER ESERCIZIO, trasformando i comandi * si può iniziare con una semplice analisi diffindiff senza covariate e abbiamo bisogno di almeno 3 variabili: outcome, la variabile trattamento e il periodo did fte, treated(treated) period(t) * con bootstrap diff fte, treated(treated) period(t) bs rep(50) * se sono disponibili altri regressori che specificano meglio l'effetto allora si possono usare: diff fte, treated(treated) period(t) cov(bk kfc roys) * Posso poi essere interessata/o anche alle statistiche relative alle caratteristiche e quindi: diff fte, treated(treated) period(t) cov(bk kfc roys) report *infine posso aggiungere l'opzione kernel diff fte, treated(treated) period(t) cov(bk kfc roys) kernel id(id) * e trovare degli stimatori migliori con pscore matching che viene eseguito sulla stima del valore del primo periodo diff fte, treated(treated) period(t) cov(bk kfc roys) kernel id(id) report * e se ripeto l'analisi per diversi cross-section dovrò aggiungere diff fte, treated(treated) period(t) cov(bk kfc roys) kernel rcs ****ESEMPI PER VERSIONI DI STATA 17 E SUPERIORI use https://www.stata-press.com/data/r17/hospdd didregress (satis) (procedure), group(hospital) time(month) estat trendplots estat ptrends gen hightrt = procedure==1 & (frequency==3 | frequency==4) label define trt 0 "Untreated" 1 "Treated" label values hightrt trt didregress (satis) (hightrt), group(hospital frequency) time(month)