首頁  >  文章  >  後端開發  >  如何使用 Pandas 在 Python 中按索引合併 DataFrame?

如何使用 Pandas 在 Python 中按索引合併 DataFrame?

Susan Sarandon
Susan Sarandon原創
2024-11-01 17:35:02167瀏覽

How do you merge DataFrames by index in Python using Pandas?

依索引合併資料幀

依索引合併資料幀是一項簡單的任務,使我們能夠根據對應的索引組合資料集。當資料集共用一組公共行標籤時,這種方法是有利的。

要依索引合併資料幀,我們有幾個選項:

1。合併函數

pd.merge 函數默認提供內部聯接,允許我們在索引上進行合併:

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

df1 = pd.DataFrame({
    'id': [278, 421],
    'begin': [56, 18],
    'conditional': [False, False],
    'confidence': [0.0, 0.0],
    'discoveryTechnique': [1, 1]
})

df2 = pd.DataFrame({
    'concept': ['A', 'B']
})

result = pd.merge(df1, df2, left_index=True, right_index=True)

print(result)</code>

輸出:

   id  begin conditional confidence discoveryTechnique concept
0 278    56       False        0.0                  1       A
1 421    18       False        0.0                  1       B

2. Join 函數

df.join 方法提供了預設的左連接:

<code class="python">result = df1.join(df2)

print(result)</code>

輸出:

   id  begin conditional confidence discoveryTechnique   concept
0 278    56       False        0.0                  1       A
1 421    18       False        0.0                  1       B
2   665    48       False        0.0                  0      NaN
3  1007    19       False        0.0                  2      NaN
4  1636    32       False        0.0                  0      NaN

3. Concat 函數

pd.concat 函數,具有axis=1 參數,預設提供外連接:

<code class="python">result = pd.concat([df1, df2], axis=1)

print(result)</code>

輸出:

   id  begin conditional confidence discoveryTechnique  concept
0 278    56       False        0.0                  1       A
1 421    18       False        0.0                  1       B
2   665    48       False        0.0                  0      NaN
3  1007    19       False        0.0                  2      NaN
4  1636    32       False        0.0                  0      NaN
5   NaN    NaN       NaN        NaN                NaN       C

輸出:
<code class="python">df2 = df2.reset_index()

print(df2)</code>

值得注意的是,索引上的合併並不被認為是不好的做法,並且當索引值是主要標識符時非常有用。可以使用reset_index方法將索引移到新欄位:
   index concept
0      0       A
1      1       B
輸出:

以上是如何使用 Pandas 在 Python 中按索引合併 DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn