我有一个包含多个子组(变量economist
)和日期(变量temps99
)的数据集。
我想运行一个tabsplit
不接受bysort
或不带by
前缀的命令。所以我创建了一个宏来将我的tabsplit
命令应用于我的数据中的每个子组。
例如:
levelsof economist, local(liste)
foreach gars of local liste {
display "`gars'"
tabsplit SubjectCategory if economist=="`gars'", p(;) sort
return list
replace nbcateco = r(r) if economist == "`gars'"
}
对于每个子组,Stata 运行tabsplit
命令,我使用变量nbcateco
来存储计数结果。
我对日期做了同样的事情,所以我可以随着时间的r(r)
推移而演变:
levelsof temps99, local(liste23)
foreach time of local liste23 {
display "`time'"
tabsplit SubjectCategory if temps99 == "`time'", p(;) sort
return list
replace nbcattime = r(r) if temps99 == "`time'"
}
现在我想economist
按日期对每个子组执行此操作temps99
。我尝试了多种组合,但我对宏不太擅长(还没有?)。
我想要的是能够r(r)
随着时间的推移为我的每个子组拥有我的。