Pandas データフレームでセルを複数の行に分割する
問題:
Pandas があります注文データを含むデータフレーム。各注文には、「package」列と「package_code」列にカンマ区切りの文字列として保存された複数のパッケージが含まれています。パッケージ データを分割し、各パッケージに対応する注文の詳細を含む新しい行を作成することを目的としています。
解決策:
Pandas バージョン >= 0.25:
<code class="python">df.set_index(['order_id', 'order_date']) \ .apply(lambda x: x.str.split(',').explode()) \ .reset_index()</code>
Pandas バージョンの場合 :
<code class="python">df.set_index(['order_date', 'order_id']) \ .stack() \ .str.split(',', expand=True) \ .stack() \ .unstack(-2) \ .reset_index(-1, drop=True) \ .reset_index()</code>
説明:
1. Set Index: データフレームのインデックスとして、そのまま残すべき列 ('order_id' と 'order_date') を設定します。
2.分割とスタック:
3.アンスタックしてインデックスをリセット:
以上がカンマ区切り値に基づいて Pandas データフレームのセルを複数の行に分割する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。