我有一个excel文件,我想用它来更新另一个更大的excel文件。两个电子表格都有一个序列号列,我想使用电子表格a的序列号栏中的值来搜索电子表格B中的序列号,然后在有匹配时更新该行上的其他一些值。
我把这两个电子表格到单独的数据框架(dfA和dfB),我试图使用dfA来搜索和更新合并dfB,但不能完全弄清楚。我想知道合并是否是最好的方法?如果是,我怎么用归并来做呢?或者最好的方法是什么?
以下是数据示例:
dfA: name serialNum status
test1 1234 deployed
test2 4321 retired
test3 1111 inventory
dfB: name serialNum status
test1 1234 NA
test2 4321 NA
test3 1111 NA
基本上我有一个非常大的电子表格,我需要用另一个电子表格更新状态
可以使用merge
将状态从dfA更新为dfB。
输入数据:
>>> dfA
name serialNum status
0 test1 1234 deployed
1 test2 4321 retired
2 test3 1111 inventory
>>> dfB
name serialNum status
0 test1 1234 NaN
1 test2 4321 NaN
2 test3 1111 NaN
dfB['status'] = dfA.merge(dfB[['name', 'serialNum']],
on=['name', 'serialNum'],
how='right')['status']
这里真正重要的参数是how
,执行合并。
>>> dfB
name serialNum status
0 test1 1234 deployed
1 test2 4321 retired
2 test3 1111 inventory