ホームページ  >  記事  >  バックエンド開発  >  重複する列を持つ 2 つの Pandas DataFrame を結合するにはどうすればよいですか?

重複する列を持つ 2 つの Pandas DataFrame を結合するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-24 19:07:29895ブラウズ

How Can You Combine Two Pandas DataFrames with Overlapping Columns?

Pandas データ フレームの結合: 共通列での結合

結合は、共通の属性に基づいてデータ フレームを結合するために不可欠な操作です。この質問では、2 つのパンダ データ フレーム、restaurant_ids_dataframe と restaurant_review_frame を組み合わせる問題について検討します。

ユーザーは、DataFrame.join() メソッドを利用して、列 business_id を使用して左結合を実行しようとします。ただし、列(business_id、stars、type)が重複しているためエラーが発生します。この問題を解決するには、代わりにマージ関数を使用します。

<code class="python">import pandas as pd

pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')</code>

on パラメータは結合に使用されるフィールド名を指定し、how パラメータは結合タイプ (外部、内部、左、または右) を定義します。 )。この場合、両方のデータ フレームのキーの和集合として アウター が選択されます。

両方のデータ フレームに star という名前の列が含まれていることに注意してください。デフォルトでは、マージ操作により列名 (star_x および star_y) にサフィックスが追加されます。これらのサフィックスをカスタマイズするには、suffixes キーワード引数を使用できます。

<code class="python">pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer', suffixes=('_restaurant_id', '_restaurant_review'))</code>

この変更により、スター列の名前が star_restaurant_id および star_restaurant_review に変更されます。マージ機能を利用し、結合タイプと列サフィックスを適切に構成することで、共有される business_id 列に基づいて 2 つのデータ フレームを正常に結合できます。

以上が重複する列を持つ 2 つの Pandas DataFrame を結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。