在 forvalue 循环中创建临时文件

creating tempfiles in a forvalue loop

我有一个数据集,我想在其中按年份和部门(职业)获取每个种族类别的样本量。我的种族变量名称是 wbho,值是 White (1)、Black(2)、Hispanic(3)、Others(3)。我写了一个 forval 循环来执行此操作,但我无法将它们保存为循环内的不同临时文件(因为每个崩溃结果的竞争变量名称都相同)。最后,我想附加 4 个临时文件。我怎样才能做到这一点?这是我的循环:

forval i=1/4 {
use ${data}wbho.dta, clear
gcollapse (count) wbho if wbho==`i', by (year docc03)
}

保存每个临时文件后,我打算像这样追加:

 use `part1', clear 
append using `part2'
append using `part3'
append using `part4'
tempfile overall
save `overall'

我不明白你为什么要循环播放。

use ${data}wbho.dta, clear
contract wbho year docc03