Hello!
I am trying to estimate a model with fixed effects and standard gravity variables using the ppml estimator. The dataset has 535,400 observations and the fixed effects in the model (variables) are over 1000. I am working with agrifood trade data over a period of 5years from over 200 countries. When I run the code below, an error message pops up after the 88th iteration saying "matrix not positive definite". I am guessing this error might be due to the large number of observations and variables, but I have no idea how to fix it. Any help from PPML experts would be very much appreciated. Thank you!!
I am trying to estimate a model with fixed effects and standard gravity variables using the ppml estimator. The dataset has 535,400 observations and the fixed effects in the model (variables) are over 1000. I am working with agrifood trade data over a period of 5years from over 200 countries. When I run the code below, an error message pops up after the 88th iteration saying "matrix not positive definite". I am guessing this error might be due to the large number of observations and variables, but I have no idea how to fix it. Any help from PPML experts would be very much appreciated. Thank you!!
Code:
timer clear 1 . timer on 1 . gen val = tot_val/100000 . ppml val EXP_TIME_FE_1-EXP_TIME_FE_`it' IMP_TIME_FE_1-IMP_TIME_FE_`jt_ref' lndist contig colties comlang fta note: checking the existence of the estimates Number of regressors excluded to ensure that the estimates exist: 69 Excluded regressors: IMP_TIME_FE_42 IMP_TIME_FE_43 IMP_TIME_FE_44 IMP_TIME_FE_45 IMP_TIME_FE_46 IMP_TIME_FE_47 I > MP_TIME_FE_48 IMP_TIME_FE_49 IMP_TIME_FE_50 IMP_TIME_FE_86 IMP_TIME_FE_87 IMP_TIME_FE_88 IMP_TIME_FE_89 IMP_TIM > E_FE_90 IMP_TIME_FE_188 IMP_TIME_FE_189 IMP_TIME_FE_190 IMP_TIME_FE_191 IMP_TIME_FE_192 IMP_TIME_FE_223 IMP_TIM > E_FE_224 IMP_TIME_FE_225 IMP_TIME_FE_226 IMP_TIME_FE_227 IMP_TIME_FE_329 IMP_TIME_FE_383 IMP_TIME_FE_384 IMP_TI > ME_FE_385 IMP_TIME_FE_386 IMP_TIME_FE_387 IMP_TIME_FE_398 IMP_TIME_FE_429 IMP_TIME_FE_567 IMP_TIME_FE_568 IMP_T > IME_FE_569 IMP_TIME_FE_614 IMP_TIME_FE_615 IMP_TIME_FE_616 IMP_TIME_FE_617 IMP_TIME_FE_618 IMP_TIME_FE_761 IMP_ > TIME_FE_762 IMP_TIME_FE_763 IMP_TIME_FE_764 IMP_TIME_FE_765 IMP_TIME_FE_818 IMP_TIME_FE_819 IMP_TIME_FE_820 IMP > _TIME_FE_821 IMP_TIME_FE_822 IMP_TIME_FE_823 IMP_TIME_FE_824 IMP_TIME_FE_825 IMP_TIME_FE_826 IMP_TIME_FE_827 IM > P_TIME_FE_856 IMP_TIME_FE_857 IMP_TIME_FE_858 IMP_TIME_FE_859 IMP_TIME_FE_860 IMP_TIME_FE_895 IMP_TIME_FE_896 I > MP_TIME_FE_897 IMP_TIME_FE_936 IMP_TIME_FE_937 IMP_TIME_FE_938 IMP_TIME_FE_939 IMP_TIME_FE_940 IMP_TIME_FE_948 Number of observations excluded: 0 note: EXP_TIME_FE_4 omitted because of collinearity. note: IMP_TIME_FE_26 omitted because of collinearity. note: IMP_TIME_FE_552 omitted because of collinearity. note: starting ppml estimation note: val has noninteger values Iteration 1: Deviance = 4.78e+08 Iteration 2: Deviance = 1.47e+08 Iteration 3: Deviance = 7.94e+07 Iteration 4: Deviance = 6.21e+07 Iteration 5: Deviance = 5.78e+07 Iteration 6: Deviance = 5.67e+07 Iteration 7: Deviance = 5.65e+07 Iteration 8: Deviance = 5.65e+07 Iteration 9: Deviance = 5.65e+07 Iteration 10: Deviance = 5.65e+07 Iteration 11: Deviance = 5.65e+07 Iteration 12: Deviance = 5.65e+07 Iteration 13: Deviance = 5.65e+07 Iteration 14: Deviance = 5.65e+07 Iteration 15: Deviance = 5.65e+07 Iteration 16: Deviance = 5.65e+07 Iteration 17: Deviance = 5.65e+07 Iteration 18: Deviance = 5.65e+07 Iteration 19: Deviance = 5.65e+07 Iteration 20: Deviance = 5.65e+07 Iteration 21: Deviance = 5.65e+07 Iteration 22: Deviance = 5.65e+07 Iteration 23: Deviance = 5.65e+07 Iteration 24: Deviance = 5.65e+07 Iteration 25: Deviance = 5.65e+07 Iteration 26: Deviance = 5.65e+07 Iteration 27: Deviance = 5.65e+07 Iteration 28: Deviance = 5.65e+07 Iteration 29: Deviance = 5.65e+07 Iteration 30: Deviance = 5.65e+07 Iteration 31: Deviance = 5.65e+07 Iteration 32: Deviance = 5.65e+07 Iteration 33: Deviance = 5.65e+07 Iteration 34: Deviance = 5.65e+07 Iteration 35: Deviance = 5.65e+07 Iteration 36: Deviance = 5.65e+07 Iteration 37: Deviance = 5.65e+07 Iteration 38: Deviance = 5.65e+07 Iteration 39: Deviance = 5.65e+07 Iteration 40: Deviance = 5.65e+07 Iteration 41: Deviance = 5.65e+07 Iteration 42: Deviance = 5.65e+07 Iteration 43: Deviance = 5.65e+07 Iteration 44: Deviance = 5.65e+07 Iteration 45: Deviance = 5.65e+07 Iteration 46: Deviance = 5.65e+07 Iteration 47: Deviance = 5.65e+07 Iteration 48: Deviance = 5.65e+07 Iteration 49: Deviance = 5.65e+07 Iteration 50: Deviance = 5.65e+07 Iteration 51: Deviance = 5.65e+07 Iteration 52: Deviance = 5.65e+07 Iteration 53: Deviance = 5.65e+07 Iteration 54: Deviance = 5.65e+07 Iteration 55: Deviance = 5.65e+07 Iteration 56: Deviance = 5.65e+07 Iteration 57: Deviance = 5.65e+07 Iteration 58: Deviance = 5.65e+07 Iteration 59: Deviance = 5.65e+07 Iteration 60: Deviance = 5.65e+07 Iteration 61: Deviance = 5.65e+07 Iteration 62: Deviance = 5.65e+07 Iteration 63: Deviance = 5.65e+07 Iteration 64: Deviance = 5.65e+07 Iteration 65: Deviance = 5.65e+07 Iteration 66: Deviance = 5.65e+07 Iteration 67: Deviance = 5.65e+07 Iteration 68: Deviance = 5.65e+07 Iteration 69: Deviance = 5.65e+07 Iteration 70: Deviance = 5.65e+07 Iteration 71: Deviance = 5.65e+07 Iteration 72: Deviance = 5.65e+07 Iteration 73: Deviance = 5.65e+07 Iteration 74: Deviance = 5.65e+07 Iteration 75: Deviance = 5.65e+07 Iteration 76: Deviance = 5.65e+07 Iteration 77: Deviance = 6.45e+24 Iteration 78: Deviance = 2.48e+24 Iteration 79: Deviance = 4.40e+24 Iteration 80: Deviance = 1.62e+24 Iteration 81: Deviance = 5.96e+23 Iteration 82: Deviance = 2.19e+23 Iteration 83: Deviance = 8.06e+22 Iteration 84: Deviance = 2.97e+22 Iteration 85: Deviance = 1.09e+22 Iteration 86: Deviance = 4.01e+21 Iteration 87: Deviance = 1.48e+21 Iteration 88: Deviance = 5.43e+20 matrix not positive definite //error message
Comment