首页 > 解决方案 > 比较和复制两个熊猫数据框之间的值

问题描述

我有两个看起来像这样的数据框

df1

Reference     New

1875          3756
1657          3998
3373          3112
3299          3090

df2

X           Replaced_X

1875        3756  
1657        3998  
1111        ...
1234          

我想将df2 中的X与 df1 中的Reference进行比较,如果这些值相同,我想将相应的New值复制到 **Replaced_X" 列。

我目前坚持使用此代码(检查“N”是因为 NaT,只有当 X 中的值以 1 开头时才应该进行比较和复制)。

for index, row in df2.iterrows():
    first_dig_str = str(df2.X)
    if not 'N' in first_dig_str:
        first_dig = int(first_dig_str[0])
        if first_dig == 1:
            compare_row = df1.loc[df1['Reference'] == df2['X']]
            
            df2['Replaced_X'] = compare_row['New'] #This is where I struggle

执行此操作的正确方法是什么?

标签: pandasdataframe

解决方案


推荐阅读