在我的数据中的每个观测提出谁遵循一些随机模式的玩家。 变量move1
了代表上移动每个球员是活跃。 我需要统计的时间每个玩家活跃人数:
数据如下所示(与_count
表示我想生成一个变量)。 招式的数量也可以根据不同的模拟。
+------------+------------+-------+-------+-------+-------+-------+-------+--------+ | simulation | playerlist | move1 | move2 | move3 | move4 | move5 | move6 | _count | +------------+------------+-------+-------+-------+-------+-------+-------+--------+ | 1 | 1 | 1 | 1 | 1 | 2 | . | . | 3 | | 1 | 2 | 2 | 2 | 4 | 4 | . | . | 2 | | 2 | 3 | 1 | 2 | 3 | 3 | 3 | 3 | 4 | | 2 | 4 | 4 | 1 | 2 | 3 | 3 | 3 | 1 | +------------+------------+-------+-------+-------+-------+-------+-------+--------+
egen
联合anycount()
是不适用在这种情况下,因为用于参数value()
的选择是不是一个常数整数。
我已经通过每个观察和使用,企图周期egen
横行(见下文),但它一直count
他为失踪人(如初始化),是不是很有效(我在50000个意见)。 有没有办法在Stata做到这一点?
gen _count =.
quietly forval i = 1/`=_N' {
egen temp = anycount(move*), values( `=`playerlist'[`i']')
replace _count = temp
drop temp
}