私はパンダでの経験を積み重ねており、この課題にぶつかっています。 'B'、 'C'私は 'A'と 'B'でグループ化し、グループごとに 'C'のすべての値に基づいて計算します。結果は新しい追加列 'D'になります。パンダでグループ化する方法、すべてのグループで引数を持つ関数と戻り値を持つ
def myfunc(df, par):
{some complex calculation based on all values of df['C']}
return [dataframe or column]
df_source['D'] = df_source.groupby(['A', 'B']).{call myfunc per group, and pass parameter value}
私の質問:ここから「D」列を作成するにはどうすればよいですか?私が理解するように、を適用すると、グループではなく単一行で動作します。
更新:単一グループ内で、各行は、例えば、Dについて異なる値を有していてもよいですグループのi番目の要素/ n要素の文字列。
'grouped_df.aggregate(FUNC)' 'すべてのグループ化されたオブジェクトに対してfunc'を適用します。 [pandas Group By](http://pandas.pydata.org/pandas-docs/stable/groupby.html)を参照してください。これらを連結して元のdfに追加することもできます。 –