首頁 > 後端開發 > Python教學 > 如何執行不同類型的 Pandas DataFrame 連線?

如何執行不同類型的 Pandas DataFrame 連線?

Mary-Kate Olsen
發布: 2024-12-26 10:56:14
原創
747 人瀏覽過

How Do I Perform Different Types of Pandas DataFrames Joins?

Pandas 合併 101:基礎知識

連接 DataFrame

在 Pandas 合併 DataFrame 涉及基於公用鍵列組合兩個或多個 DataFrame。連接有多種類型,包括:

  • INNER JOIN: 僅傳回兩個 DataFrame 中鍵匹配的行。

    • df1 .merge(df2, on='key', how='inner')
  • LEFT JOIN: 包含左側DataFrame 中的所有行以及右側DataFrame 中的符合行。右側缺失的值用 NaN 填滿。

    • df1.merge(df2, on='key', how='left')
  • RIGHT JOIN:

      RIGHT JOIN: 包含右側DataFrame 中的所有行以及來自右側DataFrame 的符合行左資料框。左側缺失的數值用 NaN 填滿。
    df1.merge(df2, on='key', how='right')
  • 完整外部連接:
      包含兩個DataFrame 中的所有行,填入缺少的行帶有NaN 的值。
    df1.merge(df2, on='key', how='outer')

不同的鍵列名稱

    如果鍵列有不同的名稱,請使用left_on 和right_on參數:
df1.merge(df2, left_on='key1', right_on='key2', how='inner')

避免輸出中出現重複的鍵列

    對不同鍵列合併時,將索引設為初步索引步驟:
df1.set_index('key1').merge(df2, left_index=True, right_on='key2')

合併多列

    透過將列表傳遞給on (或left_on 和right_on):
df1.merge( df2, on=['key1', 'key2'], how='inner')

泛化到多個DataFrame

要合併多個DataFrame,請使用pd.merge_asof 進行近似連接或pd.merge_ordered 用於有序連接。

以上是如何執行不同類型的 Pandas DataFrame 連線?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板