我使用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
Run Code Online (Sandbox Code Playgroud) 我有一个数据集,其中每一行都是一个固定的年份对,firmid其中一个是字符串。
如果我做
duplicates drop firmid year, force
Run Code Online (Sandbox Code Playgroud)
它不会删除任何内容,因为没有重复项(我最初在运行后创建了数据集duplicates drop firmid year, force)。
到目前为止,一切都很好。我想创建一个需要firmid数字的面板。所以我跑
egen newid = group(firmid)
xtset newid year
Run Code Online (Sandbox Code Playgroud)
但会弹出“面板中的重复时间值”错误。而且,
duplicates list newid year
Run Code Online (Sandbox Code Playgroud)
列出一大堆重复项。
似乎并egen, group()没有产生独特的群体。我的问题是:为什么以及如何以稳健的方式创建独特的群组?