をグループ化する新しい列を生成:私がやりたいことは3つの新しい列(total_buy、total_sellとtotal_operationsある私は次のような形式で自分のデータフレーム内の新しい列を実装しようとしているデータフレーム
Client_id Product_a
1 1
1 2
1 1
1 0
2 1
2 0
2 3
2 1
だから... ... )。これらの新しい列では、各client_idの購入、売り、合計の合計額を計算したいと考えています。各client_idは、少なくとも1回、最大24回表に表示されます。 だから私の出力は、(サンプルは上記示したため)、次のようになります。
Client_id A_buy A_sell A_operations
1 2 2 4
2 4 3 7
私は合計/平均/最小/最大、彼らのような異なる機能をGROUPBYを使用していた非常に便利ですが、今私がしたいのですがこの新しいアプローチを試してみてください。実際に私は約52kのクライアントと12種類の製品を持っていますが、私はこの新しい作業にどのようにアプローチするのか分かりません。 私のデータフレームの行の合計は約600kで、各クライアントは少なくとも1つのオカレンスと最大24個(私は2年間のデータを持っています)
このタスクにはどのような組み込み関数がありますか? この問題を解決するためのアドバイスはありますか?
アドバイスをいただきありがとうございます!
'Product_a'と' A_buy'、 'A_sell'と' A_operations'の関係は何ですか? – unutbu
同じid_clientを持つ各行について、各月のproduct_aの最終的な金額を示しています。元の投稿のサンプルに続いてclient_id = 1の場合、購入した次の月に1製品を購入した最初の月別の1つは、第3月に彼は1つの製品を販売し、先月に別のものを販売しました。ですから、client_id = 1は2回購入して2回、client_id = 2には同じロジックを販売しました。問題を明確にしたいと思います。 – WinterZ
投稿したDataFrameには、 'Client_id'と' Product_a'カラムしかありません。月を知り、彼が商品を買ったり売ったりしたことはどうですか? – unutbu