「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 重複する列を持つ 2 つの Pandas DataFrame を結合するにはどうすればよいですか?

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

2024 年 11 月 12 日に公開
ブラウズ:152

How Can You Combine Two Pandas DataFrames with Overlapping Columns?

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

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

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

import pandas as pd

pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')

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

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

pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer', suffixes=('_restaurant_id', '_restaurant_review'))

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

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3