- import pandas as pd
import numpy as np
# 例示用のDataFrame
df = pd.DataFrame({
'aaa': ['x', 'y', 'z'],
'bbb': [1, 2, 3],
'ddd': np.nan # 初期値としてNaNをセット
})
df2 = pd.DataFrame({
'aaa': ['x', 'y', 'a'],
'bbb': [1, 2, 4],
'ccc': ['value_x', 'value_y', 'value_a']
})
# dfとdf2を'aaa'と'bbb'列で照合し、一致する場合はdf2の'ccc'の値をdfの'ddd'にセット
df = df.merge(df2'aaa', 'bbb', 'ccc', on=['aaa', 'bbb'], how='left', suffixes=('', '_y'))
# 照合しない場合は'ddd'列に0をセット
df['ddd'] = df['ccc'].fillna(0)
# 不要になった'ccc'列を削除
df.drop(columns=['ccc'], inplace=True)
print(df)