はじめに
データフレームをくっつける方法を調べるとmergeやらconcatenateがある。
初心者の自分としては混乱してしまうのでmergeを少しまとめるます
ベースデータ準備
import pandas as pd import numpy as np df1 = pd.DataFrame({'key':['X', 'Z', 'Y', 'Z', 'X', 'X'], "data1": np.arange(6)}) df2 = pd.DataFrame({'key': ['Q', 'Y', 'Z'], 'data2':[1, 2, 3]})

merge (inner join)
- 何も指定していないと inner join と同等
マージイメージ

コード
pd.merge(df1, df2)
結果

merge (left join)
- howパラメータにleftを渡すと left join
マージイメージ

コード
pd.merge(df1, df2, on="key", how="left")
結果

merge (right join)
- howパラメータにrightを渡すと right join
マージイメージ

コード
pd.merge(df1, df2, on="key", how="right")
結果

merge (outer join)
- howパラメータにouterを渡すと outer join
マージイメージ

コード
pd.merge(df1, df2, on="key", how="outer")
結果

最後に
なるほど。RDBのJOINと同じですね


