Pythonのデータ分析ライブラリであるpandasのDataFrameを使って、データを横方向に結合する方法について説明します。
DataFrameの横方向結合
DataFrameを横方向に結合するためには、concat
、merge
、join
の3つの関数が利用可能です。
concat関数
concat
関数は、複数のDataFrameを単純に縦または横方向に結合するために使用されます。横方向に結合する際は、インデックスを参照します。
import pandas as pd
df1 = pd.DataFrame({'A': ['A1', 'A2', 'A3'], 'B': ['B1', 'B2', 'B3'], 'C': ['C1', 'C2', 'C3']}, index=['ONE', 'TWO', 'THREE'])
df2 = pd.DataFrame({'C': ['C2', 'C3', 'C4'], 'D': ['D2', 'D3', 'D4']}, index=['TWO', 'THREE', 'FOUR'])
result = pd.concat([df1, df2], axis=1)
print(result)
merge関数
merge
関数は、特定のカラムをもとに2つのDataFrameを結合します。条件を細かく指定することで、SQLのようなJOIN操作を行うことが可能です。
result = df1.merge(df2, on='C')
print(result)
join関数
join
関数は、インデックスをもとにDataFrameを結合します。結合によりカラム名が重複する場合はサフィックスを指定する必要があります。
result = df1.join(df2, lsuffix='_l', rsuffix='_r')
print(result)
以上、Pythonのpandasライブラリを使用してDataFrameを横方向に結合する方法について説明しました。これらの関数を使いこなすことで、データ分析の幅が広がります。.