我希望将普通最小二乘(OLS)回归的结果存储在Stata中的双循环中。
下面是我的代码结构:
foreach i2 of numlist 1 2 3{
foreach i3 of numlist 1 2 3 4{
quiet: eststo: reg dep covariates, robust
}
}最终目标是在Excel中创建一个由12行(每个模型一行)和7列(观察值数量、估计常数、5个估计系数)组成的表格。
对如何做到这一点有什么建议吗?
发布于 2019-06-17 04:17:04
这样的表只需使用社区贡献的命令esttab即可创建
sysuse auto, clear
eststo clear
eststo m1: quietly regress price weight
eststo m2: quietly regress price weight mpg
quietly esttab
matrix A = r(coefs)'
matrix C = r(stats)'
tokenize "`: rownames A'"
forvalues i = 1 / `=rowsof(A)' {
if strmatch("``i''", "*b*") matrix B = nullmat(B) \ A[`i', 1...]
}
matrix C = B , C
matrix rownames C = "Model 1" "Model 2"结果:
esttab matrix(C) using table.csv, eqlabels(none) mlabels(none) varlabels("Model 1" "Model 2")
----------------------------------------------------------------
weight mpg _cons N
----------------------------------------------------------------
Model 1 2.044063 -6.707353 74
Model 2 1.746559 -49.51222 1946.069 74
----------------------------------------------------------------https://stackoverflow.com/questions/33394309
复制相似问题