I thought I could do this by running statsby and then extracting and merging in the coefficients.
However, I am facing issues. So, if I run - reg curr ib2.geo_code, baselevels - I get the below results, which contains the dummy coefficients I am after for this model.
Array
However, if I run statsby, the coefficients on each 'geo_code' variable come out as zero.
Array
Perhaps I am missing something, likely related to the 'by(group)' option in statsby that is causing this.
Also, I am able to get what I want using the following code, with the caveat that the coefficient on the base group (i.e. PAC) should be zero and in this case is not (it's close, but not exactly zero). I feel there is a better and more accurate way to do what I am after.
Code:
qui reg curr ib2.geo_code, baselevels local intercept=_b[_cons] *Run regression 'by group' *Below is by "region", but could also be by "region and ternary rural variable" statsby _b[_cons], saving(tempreg.dta, replace) by(geo_code): reg curr ib2.geo_code, baselevels merge m:1 geo_code using tempreg drop _merge gen coef=_stat_1-`intercept' drop _stat_1 list
Code:
* Example generated by -dataex-. To install: ssc install dataex clear input str3(geo iso) float urb_cl double urb float curr long geo_code "FER" "CMR" . 47.836 . 1 "FER" "DEQ" 0 31.763999999999996 1401.7407 1 "FER" "LBR" . 51.807 . 1 "FER" "LBR" . 51.807 . 1 "FER" "SYC" . 46.28 . 1 "FER" "TGO" . 61.968 . 1 "FER" "TYE" 2 66.793 6300.079 1 "FER" "YTE" 2 39.472 4489.9014 1 "FER" "YTE" 2 39.472 22500.28 1 "FER" "YTE" . 39.472 . 1 "FER" "YTE" 2 39.472 3346.619 1 "PAC" "ASA" 2 82.892 1873.3757 2 "PAC" "ASA" 2 82.892 1252.2163 2 "PAC" "BGD" 2 68.775 3583.354 2 "PAC" "FJI" . 47.317 . 2 "PAC" "KHM" 2 79.337 7045.824 2 "PAC" "VNM" 2 68.92 1321.158 2 "PAC" "VNM" 2 68.92 4199.222 2 "YRP" "ASA" 0 11.305 4502.1187 3 "YRP" "ASA" . 11.305 . 3 "YRP" "ASA" 0 11.305 7127.425 3 "YRP" "KWW" . 0 . 3 "YRP" "REQ" 0 1.391 8219.178 3 "YRP" "TRS" 2 66.793 2925.0366 3 end label values urb_cl label_n label def label_n 0 "low", modify label def label_n 2 "high", modify label values geo_code geo_code label def geo_code 1 "FER", modify label def geo_code 2 "PAC", modify label def geo_code 3 "YRP", modify
0 Response to Extracting dummy regression coefficients using statsby
Post a Comment