我有两个表1。表\u A 2。表\u B我想用表\u B更新表\u A的一个特定列该列的新值,可能表\u A中的行数与表\u B不匹配。 我知道如何使用SQL编写更新表A的查询,但不知道如何在pandas中完成,我需要一个与pandas中的update query等效的查询
更新查询:
update table_A
set dt_of_join = sq.dt_of_join
from (select id_emp, max(joining) as dt_of_join
from table_B
group by id_emp ) as sq
where table_A.id_emp = sq.id_emp
我需要在熊猫数据帧上述查询等效,任何帮助真的感谢。你知道吗
示例:
Table_A
id_emp | dt_of_join
2 | 30-03-2018
4 | 03-04-2018
5 | 04-05-2018
7 | 10-06-2018
12 | 20-07-2018
10 | 09-08-2018
19 | 25-12-2018
表B是上述查询中的子查询
Table_B
id_emp | dt_of_join
4 | 01-01-2019
12 | 03-02-2019
10 | 09-05-2019
5 | 21-06-2019
更新查询成功后,表\u A应如下所示
Table_A
id_emp | dt_of_join
2 | 30-03-2018
4 | 01-01-2019
5 | 21-06-2019
7 | 10-06-2018
12 | 03-02-2019
10 | 09-05-2019
19 | 25-12-2018
在将emp\uid设置为这两个中的索引之后,考虑DataFrame.update。你知道吗
您可以将^{} 与
fillna()
一起使用,这对于单列更新来说是一个更快的选择(假设id_emp
是一列,如果不是d
应该是df2['dt_of_join']
):为什么不
reindex
:相关问题 更多 >
编程相关推荐