Pythonで複数のテーブルを結合する方法

PythonのPandasライブラリは、複数の表を効果的に結合できます。ここでは、主な方法をいくつか紹介します。

  1. concat()関数を使うと、複数のテーブルを縦(行方向)または横に(列方向)つなげることができます。axisパラメータを指定することでつなぎ方を制御でき、axis=0は行方向、axis=1は列方向を表します。
import pandas as pd

# 创建多个表
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})

# 按行拼接
result1 = pd.concat([df1, df2], axis=0)

# 按列拼接
result2 = pd.concat([df1, df2], axis=1)
  1. 指定したキーを元に複数の表を結合する: merge() 関数を使う
import pandas as pd

# 创建多个表
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'key': ['a', 'b', 'c']})
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12], 'key': ['a', 'b', 'c']})

# 根据键合并
result = pd.merge(df1, df2, on='key')
  1. インデックスに沿って複数のテーブルを結合:join() 関数を使用して結合します。how パラメーターを指定することで、left、right、inner、outer などの結合方法を指定できます。
import pandas as pd

# 创建多个表
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=['a', 'b', 'c'])
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12]}, index=['b', 'c', 'd'])

# 根据索引合并
result = df1.join(df2, how='outer')
bannerAds