Hi everyone,
I am busy running a regression using a PPML estimator with several fixed effects to estimate the impact of a civil unrest episode using a difference-in-differences estimator on export flows and decomposing these into the extensive (number of distinct products exported) and intensive (average value per product exported margins). As such, the difference-in-difference variable is an interaction between a dummy which takes the value of 1 if the observation is from an origin region that experienced a civil unrest episode (and 0 otherwise) and a dummy that takes the value of 1 if the observation is recorded during the unrest period (and 0 otherwise).The data is aggregated to the origin-differentiation level - destination - time level, where "differentiation level" simply refers to if the product is classified as differentiated or undifferentiated.
I am trying to extend the analysis by estimating a triple differences specification to see if there was any difference in the impact on differentiated relative to undifferentiated products as follows:
xi: ppmlhdfe numproducts DDD if t < 739, absorb(districttimeid districtproductid producttimeid destinationtimeid districtdestinationid) r cl(districtid destinationid)
where:
- numproducts refers to number of products
- DDD is the triple differences variable (the difference in difference variable interacted with a dummy which takes a value of 1 if the product is differentiated)
- districttimeid is origin x time fixed effects
- districtproductid is origin x product fixed effects
- producttimeid is group x time fixed effects ("group" referring to whether the product is differentiated versus undifferentiated)
- destinationtimeid is destination x time fixed effects
- districtdestinationid is origin x destination fixed effects
and standard errors are clustered to the origin and destination level.
However, the estimates I am getting do not include any standard errors or p-values (instead, the output just has dots where these values should be). Does anyone know why this might be? Have I included incorrect fixed effects, or am I clustering at the wrong level (issues go away when clustering at only the origin district level).
I am using Stata 15, and my data looks as follows:
Thanks!
I am busy running a regression using a PPML estimator with several fixed effects to estimate the impact of a civil unrest episode using a difference-in-differences estimator on export flows and decomposing these into the extensive (number of distinct products exported) and intensive (average value per product exported margins). As such, the difference-in-difference variable is an interaction between a dummy which takes the value of 1 if the observation is from an origin region that experienced a civil unrest episode (and 0 otherwise) and a dummy that takes the value of 1 if the observation is recorded during the unrest period (and 0 otherwise).The data is aggregated to the origin-differentiation level - destination - time level, where "differentiation level" simply refers to if the product is classified as differentiated or undifferentiated.
I am trying to extend the analysis by estimating a triple differences specification to see if there was any difference in the impact on differentiated relative to undifferentiated products as follows:
xi: ppmlhdfe numproducts DDD if t < 739, absorb(districttimeid districtproductid producttimeid destinationtimeid districtdestinationid) r cl(districtid destinationid)
where:
- numproducts refers to number of products
- DDD is the triple differences variable (the difference in difference variable interacted with a dummy which takes a value of 1 if the product is differentiated)
- districttimeid is origin x time fixed effects
- districtproductid is origin x product fixed effects
- producttimeid is group x time fixed effects ("group" referring to whether the product is differentiated versus undifferentiated)
- destinationtimeid is destination x time fixed effects
- districtdestinationid is origin x destination fixed effects
and standard errors are clustered to the origin and destination level.
However, the estimates I am getting do not include any standard errors or p-values (instead, the output just has dots where these values should be). Does anyone know why this might be? Have I included incorrect fixed effects, or am I clustering at the wrong level (issues go away when clustering at only the origin district level).
I am using Stata 15, and my data looks as follows:
Code:
* Example generated by -dataex-. To install: ssc install dataex clear input float nproductsokdt str22 dof float DDifferentiated str4 d float t 2 "Cape Town" 0 "ABW" 732 0 "Cape Town" . "ABW" 732 0 "Cape Town" . "ABW" 733 2 "Cape Town" 0 "ABW" 734 0 "Cape Town" . "ABW" 734 2 "Cape Town" 0 "ABW" 735 0 "Cape Town" . "ABW" 735 1 "Cape Town" 0 "ABW" 736 0 "Cape Town" . "ABW" 736 0 "Cape Town" . "ABW" 737 0 "Cape Town" . "ABW" 738 1 "Cape Town" 0 "ABW" 738 0 "Cape Town" . "ABW" 739 2 "Cape Town" 0 "ABW" 739 2 "Cape Town" 0 "ABW" 740 0 "Cape Town" . "ABW" 740 0 "Cape Town" . "ABW" 741 0 "Cape Town" . "ABW" 742 0 "Cape Town" . "ABW" 743 0 "Durban" . "AFG" 732 0 "Durban" . "AFG" 733 0 "Durban" . "AFG" 734 0 "Durban" . "AFG" 735 0 "Durban" . "AFG" 736 0 "Durban" . "AFG" 737 0 "Durban" . "AFG" 738 0 "Durban" . "AFG" 739 0 "Durban" . "AFG" 740 0 "Durban" . "AFG" 741 1 "Durban" 0 "AFG" 742 0 "Durban" . "AFG" 743 18 "Durban" 0 "AGO" 732 9 "Cape Town" 0 "AGO" 732 38 "Cape Town" 1 "AGO" 732 1 "Richards Bay" 0 "AGO" 732 74 "Durban" 1 "AGO" 732 0 "Cape Town" . "AGO" 732 5 "Durban" . "AGO" 732 132 "Cape Town" 1 "AGO" 733 11 "Cape Town" . "AGO" 733 0 "Richards Bay" . "AGO" 733 22 "Durban" 0 "AGO" 733 88 "Durban" 1 "AGO" 733 21 "Cape Town" 0 "AGO" 733 3 "Durban" . "AGO" 733 6 "Durban" . "AGO" 734 10 "Cape Town" 0 "AGO" 734 1 "Richards Bay" 0 "AGO" 734 143 "Durban" 1 "AGO" 734 4 "Cape Town" . "AGO" 734 18 "Cape Town" 1 "AGO" 734 36 "Durban" 0 "AGO" 734 19 "Durban" 0 "AGO" 735 13 "Cape Town" 0 "AGO" 735 0 "Richards Bay" . "AGO" 735 81 "Cape Town" 1 "AGO" 735 4 "Durban" . "AGO" 735 156 "Durban" 1 "AGO" 735 4 "Cape Town" . "AGO" 735 0 "Richards Bay" . "AGO" 736 3 "Cape Town" . "AGO" 736 11 "Cape Town" 0 "AGO" 736 56 "Cape Town" 1 "AGO" 736 91 "Durban" 1 "AGO" 736 21 "Durban" 0 "AGO" 736 1 "Durban" . "AGO" 736 26 "Durban" 0 "AGO" 737 14 "Cape Town" 0 "AGO" 737 0 "Richards Bay" . "AGO" 737 8 "Cape Town" . "AGO" 737 85 "Cape Town" 1 "AGO" 737 150 "Durban" 1 "AGO" 737 3 "Durban" . "AGO" 737 26 "Durban" 0 "AGO" 738 61 "Cape Town" 1 "AGO" 738 3 "Durban" . "AGO" 738 7 "Cape Town" . "AGO" 738 13 "Cape Town" 0 "AGO" 738 121 "Durban" 1 "AGO" 738 0 "Richards Bay" . "AGO" 738 188 "Durban" 1 "AGO" 739 30 "Cape Town" 0 "AGO" 739 26 "Durban" 0 "AGO" 739 14 "Cape Town" . "AGO" 739 246 "Cape Town" 1 "AGO" 739 6 "Durban" . "AGO" 739 1 "Richards Bay" 0 "AGO" 739 4 "Cape Town" . "AGO" 740 18 "Durban" 0 "AGO" 740 153 "Durban" 1 "AGO" 740 0 "Richards Bay" . "AGO" 740 16 "Cape Town" 0 "AGO" 740 6 "Durban" . "AGO" 740 50 "Cape Town" 1 "AGO" 740 4 "Durban" . "AGO" 741 0 "Richards Bay" . "AGO" 741 160 "Durban" 1 "AGO" 741 6 "Cape Town" . "AGO" 741 31 "Durban" 0 "AGO" 741 91 "Cape Town" 1 "AGO" 741 end format %tm t
Thanks!
Comment