ホームページ  >  記事  >  バックエンド開発  >  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.結合関数

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

インデックスでのマージは悪い習慣とは見なされず、インデックス値が主要な識別子である場合に便利であることに注意することが重要です。インデックスを新しい列に移動するには、reset_index メソッドを使用します:

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

print(df2)</code>

出力:

   index concept
0      0       A
1      1       B

以上がPandas を使用して Python でインデックスによって DataFrame をマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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