如何在Stata中连续运行以下collapse
命令而不丢失所有变量?
例如,当我运行:
collapse (first) Complete num_countries, by(year Region name)
collapse (sum) Complete (first) num_countries, by(year Region)
我丢失了一个名为all_m
的变量,我需要它执行以下命令:
collapse (first) all_m num_countries, by(year Region name)
collapse (sum) all_m (first) num_countries, by(year Region)
我尝试将其存储在local
中,但collapse
命令在这种情况下不起作用。
在没有看到数据结构的情况下,很难说,但听起来你甚至不需要发出两组collapse
命令,因为你的数据每次都将由相同的变量collapse
d,并且你正在计算Complete
和all_m
的相同统计数据。可以这样做:
collapse (first) Complete all_m num_countries, by(year Region name)
collapse (sum) Complete all_m (first) num_countries, by(year Region)
如果我错了,那么就像@Nick Cox建议的那样做,或者使用preserve
和restore
。
您需要同一数据集的两个不同的collapse
版本。只需在第二个collapse
之前再次读取原始数据。
不清楚您尝试了什么,但听起来注定要失败:最多可以使用一个局部宏来保存变量名,但如果变量本身被删除,那对您没有任何好处。