【发布时间】:2013-12-16 08:44:40
【问题描述】:
我想创建一个变量 (counter),它每年计算另一个变量 (firmage0) 的非缺失值。我的代码如下所示:
sort year
quietly by year: gen counter = _n if firmage0 != .
不幸的是,即使有缺失值,Stata 也会从 1 开始计数。但是我想在有非缺失值时开始计数。此外,第二个非缺失值应为“2”,第三个为“3”,依此类推。有一个重要的限制。不要使用preserve和restore!创建变量 counter 后,我的数据集如下所示(这只是其中的一小部分)。可用空间意味着缺失值!
year firmage0 counter
1975
1975
1975
1975
1975 21 5
1975
1975 60 7
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975 115 20
1975
1975
1975
但是数据集应该是这样的:
year firmage0 counter
1975
1975
1975
1975
1975 21 1
1975
1975 60 2
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975
1975 115 3
1975
1975
1975
【问题讨论】:
标签: stata