使用Pandas数据框架中的列来搜索和更新不同数据框架中的列



我有一个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

最新更新