グループをオーバーカウントplayer1
とplayer2
の列には、それぞれround
でお互いに対戦する選手の名前が含まれています。パンダは、私は次のように見えるパンダのデータフレームを持って
ここで、プレーヤーA
などのトーナメントの参加を累計したいと考えています。擬似コードでは、これは意味:名前A
を持つプレイヤーがトーナメントID
あたりplayer1
またはplayer2
列のいずれかで起動した場合は、この(ノートのようになります。1.
結果によって、カウンタをインクリメント:私の例プレーヤーA
に参加しました
ID round player1 player2 playerAparticipated
1 1 A B 1
1 2 A C 1
1 3 B D 1
2 1 B C 0
2 2 C D 0
2 3 C E 0
3 1 B C 2
3 2 C D 2
3 3 C A 2
私の現在のステータスは、それぞれのプレイヤーがトーナメントに参加した場合、私は値1
又は0
示すを含む「ヘルパー」欄を追加したこと、である。ID
S 1および3)とトーナメントで
ID round player1 player2 helper
1 1 A B 1
1 2 A C 1
1 3 B D 1
2 1 B C 0
2 2 C D 0
2 3 C E 0
3 1 B C 1
3 2 C D 1
3 3 C A 1
私はちょうど1つの最後のステップ、例えば、所望の方法でhelper
列をカウントcumsum()
のスマートな使用を必要とすると思います。しかし、私はまだ解決策を考え出すことができませんでした。
データフレーム内の値は必要ですか? groupby( 'ID')。count()) 'あなたにトーナメントの回数を与えるPlayer 'A '参加しました。 – rafasc
はい、元のデータフレームの値を持つことをお勧めします。 – beta