提供された情報に基づいた質問形式のタイトルをいくつか示します。 明確かつ簡潔: * Pandas DataFrame でカンマ区切りの値を複数の行に分割するにはどうすればよいですか? * Com を使用して列を分割する

Patricia Arquette
リリース: 2024-11-02 05:53:29
オリジナル
447 人が閲覧しました

Here are some question-style titles based on the information provided:

Clear and Concise:

* How to Split Comma-Separated Values into Multiple Rows in a Pandas DataFrame?
* Splitting Columns with Comma-Separated Lists into Multiple Rows in Pandas
* Trans

pandas DataFrame でセルを複数の行に分割する

質問:

どうすれば分割できますかカンマ区切りの [package および package_code] 列を pandas DataFrame の複数の行に分割し、パッケージごとに対応する注文の詳細を含む新しい行を作成しますか?

答え:

方法 1: (pandas >= 0.25)

<code class="python">df.set_index(['order_id', 'order_date']) \
    .apply(lambda x: x.str.split(',').explode()) \
    .reset_index() </code>
ログイン後にコピー

方法 2: (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. インデックスとして分割しない列を設定します。
  2. stack() を使用して行をフラット化します。
  3. Expand=True を指定した str.split() を使用して、カンマで値を分割し、列に展開します。
  4. 結果の DataFrame を再度スタックして、行を平坦化します。
  5. unstack(-2) を使用します。 ) を使用して、インデックスの最後から 2 番目のレベルから新しい列を作成します。
  6. インデックスの余分な最後のレベルを削除するには、reset_index(-1,drop=True) を使用します。
  7. インデックスを次のようにリセットします。元の順序に戻してください。

以上が提供された情報に基づいた質問形式のタイトルをいくつか示します。 明確かつ簡潔: * Pandas DataFrame でカンマ区切りの値を複数の行に分割するにはどうすればよいですか? * Com を使用して列を分割するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!