本記事では、二つのデータフレームを結合する雛形コードを6つ載せました。はじめに、その一覧を示します。
merged_df = pd.merge(df1, df2, on='key_column')
merged_df = pd.merge(df1, df2, left_on='left_key', right_on='right_key')
merged_df = pd.merge(df1, df2, how='inner')
merged_df = pd.merge(df1, df2, how='outer')
merged_df = pd.merge(df1, df2, how='left')
merged_df = pd.merge(df1, df2, how='right')
merged_df = pd.merge(df1, df2, on=['key1', 'key2'])
merged_df = pd.merge(df1, df2, left_index=True, right_index=True)
merged_df = pd.merge(df1, df2, on='key_column', suffixes=('_left', '_right'))
以降では、上記1~6について、順に図入りで示します。
merged_df = pd.merge(df1, df2, on='key_column')
下図左が結合元の2つのデータフレームで、右が結合後のデータフレームです。結合のキーとなる列名は「key_column」です。これにより、df1とdf2がkey_columnに基づいて結合します。
merged_df = pd.merge(df1, df2, left_on='left_key', right_on='right_key')
df1の「left_key」列とdf2の「right_key」列を基準に結合します。
merged_df = pd.merge(df1, df2, how='inner')
df1とdf2の「key_column」ついて、共通の要素を持つ行を結合します。
merged_df = pd.merge(df1, df2, how='outer')
df1とdf2の「key_column」ついて、共通の要素をもつ行以外の行も結合します。
merged_df = pd.merge(df1, df2, how='left')
df1とdf2の「key_column」ついて、共通の要素をもつ行以外にdf1の行も結合します。
merged_df = pd.merge(df1, df2, how='right')
df1とdf2の「key_column」ついて、共通の要素をもつ行以外にdf2の行も結合します。
merged_df = pd.merge(df1, df2, on=['key1', 'key2'])
複数の列を結合キーとして指定してdf1とdf2を結合します。
merged_df = pd.merge(df1, df2, left_index=True, right_index=True)
列名ではなくて、df1とdf2の共通するインデックスに基づいて結合します。
merged_df = pd.merge(df1, df2, on='key_column', suffixes=('_left', '_right'))
もし、結合するキー以外に共通する列名がある場合、接尾辞を付けて列名を区別できます。
以上
<広告>
リンク
リンク
リンク