ホームページ >バックエンド開発 >Python チュートリアル >Pandas DataFrame でカンマ区切りの値を複数の行に区切る方法は?
このシナリオでは、注文データを含む DataFrame があり、各注文には複数のパッケージがカンマ区切りで保存されています。 package 列と package_code 列の文字列。目標は、これらのパッケージを分割し、対応する注文の詳細を含む各パッケージの新しい行を作成することです。
すべての分割可能な列に同じ数のカンマ区切り項目があると仮定すると、次の手順を利用して達成できます。目的の出力:
<code class="python">import pandas as pd # Create the sample DataFrame df = pd.DataFrame({"order_id": [1, 3, 7], "order_date": ["20/5/2018", "22/5/2018", "23/5/2018"], "package": ["p1,p2,p3", "p4", "p5,p6"], "package_code": ["#111,#222,#333", "#444", "#555,#666"]}) # Use pandas functions to split and explode the columns result_df = (df.set_index(['order_id', 'order_date']) .apply(lambda x: x.str.split(',').explode()) .reset_index()) # Display the output DataFrame print(result_df)</code>
このコードは、まずインデックスとして触れられない列を設定します。次に、各列を反復処理し、値をカンマで分割し、それらを独自の行に分解します。最後に、インデックスがリセットされて、目的の形式が取得されます。
出力データフレームには、注文の詳細を含む各パッケージの個別の行が含まれます。
以上がPandas DataFrame でカンマ区切りの値を複数の行に区切る方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。