ホームページ > データベース > mysql チュートリアル > 複数の結合列を持つ複数のデータフレーム間でパンダの左外部結合を実行するにはどうすればよいですか?

複数の結合列を持つ複数のデータフレーム間でパンダの左外部結合を実行するにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-04 00:51:44
オリジナル
1022 人が閲覧しました

How to Perform a Pandas Left Outer Join Across Multiple DataFrames with Multiple Join Columns?

Pandas は複数の列を持つ複数の DataFrames で外部結合を残します

Pandas では、データフレームのマージは一般的なタスクです。複数のテーブルと複数の結合列を含む結合を実行する場合、これはより複雑になります。左外部結合の場合、左側のデータフレームのすべての行を保持し、右側のデータフレームから欠損値を埋めます。

データフレーム df1、df2、および df3 を複数の結合列とマージするには、2 段階の手順をお勧めします。アプローチ:

ステップ 1: df1 とdf2

s1 = pd.merge(df1, df2, how='left', on=['Year', 'Week', 'Colour'])
ログイン後にコピー

ステップ 2: ステップ 1 の結果を df3

とマージします。2 回目のマージには Year 列が必要ないため、参加する前に df3 からそれをドロップできます:

df3_dropped = df3.drop('Year', axis=1)
df = pd.merge(s1, df3_dropped, how='left', on=['Week', 'Colour'])
ログイン後にコピー

これにより、必要な結果が得られます。出力:

   Year Week Colour  Val1  Val2 Val3
0  2014    A    Red    50   NaN  NaN
1  2014    B    Red    60   NaN   60
2  2014    B  Black    70   100   10
3  2014    C    Red    10    20  NaN
4  2014    D  Green    20   NaN   20
ログイン後にコピー

以上が複数の結合列を持つ複数のデータフレーム間でパンダの左外部結合を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート