それぞれ複数のレコードを持つ個人のデータフレームがあります。Python で各個人のシーケンス内のレコードを列挙したいと思います。基本的に、次のテーブルに「シーケンス」列を作成したいと思います。
patient date sequence
145 20Jun2009 1
145 24Jun2009 2
145 15Jul2009 3
582 09Feb2008 1
582 21Feb2008 2
987 14Mar2010 1
987 02May2010 2
987 12May2010 3
これは本質的に同じ質問ですここしかし、私は Python で作業しており、SQL ソリューションを実装できません。反復可能なカウントを持つ groupby ステートメントを使用できると思いますが、これまでのところ成功していません。
ベストアンサー1
恥ずかしくなるほど単純な答えに偶然出会いました。groupby ステートメントには、グループ項目を列挙する 'cumcount()' オプションがあります。
df['sequence']=df.groupby('patient').cumcount()
注意すべき点は、レコードは列挙したい順序で並べる必要があるということです。