我使用forval
循环运行3,500次回归,每组一次。然后我需要总结一下结果。通常,当我使用循环运行回归时,我使用估计存储函数,后跟estout
。下面是一个示例代码。但我相信此代码可以处理的限制为300。如果有人能让我知道如何自动完成3,500次回归的过程,我将非常感激。
示例代码:
forval j = 1/3500 {
regress y x if group == `j'
estimates store m`j', title(Model `j')
}
estout m* using "Results.csv", cells(b t) ///
legend label varlabels(_cons constant) ///
stats(r2 df_r N, fmt(3 0 1) label(R-sqr dfres N)) replace
答案 0 :(得分:1)
以下是使用statsby
的示例,其中我对rep78变量定义的5个组中的每个组运行mpg的价格回归,并将结果存储在名为my_regs的Stata数据集中:
sysuse auto, clear
statsby _b _se, by(rep78) saving(my_regs): reg price mpg
use my_regs.dta
如果您愿意,可以省略saving()
选项,然后您的数据集将在内存中被回归结果替换,因此您无需直接使用use
打开文件。 / p>