私のデータの各観測は、ランダムなパターンに従うプレーヤーを示しています。変数move1
up は、各プレイヤーがアクティブだった移動を表します。各プレイヤーがアクティブだった回数をカウントする必要があります。
データは次のようになります (_count
生成したい変数を表しています)。移動回数もシミュレーションによって異なります。
+------------+------------+-------+-------+------- +------+-------+-------+--------+ | | シミュレーション | プレイヤーリスト | 移動1 | 移動2 | 移動3 | 移動4 | 移動5 | 移動6 | _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
この場合、オプションの引数が整数定数ではないため、 combined withanycount()
は適用できません。value()
各観測を循環させて行ごとに使用しようとしましたegen
が(以下を参照)、count
(初期化されたまま)欠落したままであり、あまり効率的ではありません(50,000の観測があります)。Stataでこれを行う方法はありますか?
gen _count =.
quietly forval i = 1/`=_N' {
egen temp = anycount(move*), values( `=`playerlist'[`i']')
replace _count = temp
drop temp
}