У меня есть два фрейма данных, скажем df1
и df2
.
df1:
id code remarks
1 a12
2 b32
3 c12
df2:
id code remarks
1 aaa12 ok
2 b32 done
3 ccc12 not ok
Я хочу обновить значение df1
примечаний значением df2
примечаний, основанным на id
и code
.
Здесь второе значение соответствует (id-2 , code-b32
), поэтому обновите значение примечания 'done' в столбце df1
примечания.
Конечный результат df1
будет таким, как показано ниже,
df1:
id code remarks
1 a12
2 b32 done
3 c12
До сих пор я пытался, как показано ниже, я знаю, что это не правильно, но мне нужно что-то вроде этого
df1_key = df1['id'].astype(str) + df1['code'].astype(str)
df2_key = df2['id'].astype(str) + df2['code'].astype(str)
df['flag'] = df1_key.isin(df2_key, df1['remarks']=df2['remarks'])
Согласно это один, я попробовал нижеКроме того, но у меня не получилось.
df3 = df1.merge(df2[['remarks']], on=['id','code'], how='left')