更改 Pandas 数据框中的值

Change Values in Pandas Dataframe

我有两个数据框。我想更改一些值。

我知道如何使用 isin 和 where 语句逐一更改它,但我不知道如何更改大量更改。

df1

 Name      Type
 David     Staff 
 Jones     Pilot
 Jack      Pilot
 Susan     Steward
 John      Staff
 Leroy     Staff
 Steve     Staff

df2

 Name     Type
 David    Captain
 Leroy    Pilot
 Steve    Pilot

如何使用 df2 更改 df1 上的“类型”列?

df_desired

 Name      Type
 David     Captain 
 Jones     Pilot
 Jack      Pilot
 Susan     Steward
 John      Staff
 Leroy     Pilot
 Steve     Pilot

您可以尝试将 df2Type 列映射到 df1,然后 update

df1['Type'].update(df1['Name'].map(df2.set_index('Name')['Type']))
print(df1)

    Name     Type
0  David  Captain
1  Jones    Pilot
2   Jack    Pilot
3  Susan  Steward
4   John    Staff
5  Leroy    Pilot
6  Steve    Pilot