Python:在主键上连接两个数据帧
Python: Joining two dataframes on a primary key
我有两个 DataFrame A 和 B。我想用 B 中特定列彼此相等的行替换 A 中的行。
A:
1 2 3
0 asd 0.304012 0.358484
1 fdsa -0.198157 0.616415
2 gfd -0.054764 0.389018
3 ff NaN 1.164172
B:
1 2 3
0 asd 10.4012 1.458484
1 fdsa 100.198157 2.015
我想要以下结果:
1 2 3
0 asd 10.4012 1.458484 (row merged from B on column 1)
1 fdsa 100.198157 2.015 (row merged from B on column 1)
2 gfd -0.054764 0.389018
3 ff NaN 1.164172
只需调用 update
:这将用 rhs df 的内容覆盖 lhs df,在您的情况下,将 df
和 df1
替换为 A
和 B
分别为:
In [13]:
df.update(df1)
df
Out[13]:
1 2 3
0 asd 10.401200 1.458484
1 fdsa 100.198157 2.015000
2 gfd -0.054764 0.389018
3 ff NaN 1.164172
我有两个 DataFrame A 和 B。我想用 B 中特定列彼此相等的行替换 A 中的行。
A:
1 2 3
0 asd 0.304012 0.358484
1 fdsa -0.198157 0.616415
2 gfd -0.054764 0.389018
3 ff NaN 1.164172
B:
1 2 3
0 asd 10.4012 1.458484
1 fdsa 100.198157 2.015
我想要以下结果:
1 2 3
0 asd 10.4012 1.458484 (row merged from B on column 1)
1 fdsa 100.198157 2.015 (row merged from B on column 1)
2 gfd -0.054764 0.389018
3 ff NaN 1.164172
只需调用 update
:这将用 rhs df 的内容覆盖 lhs df,在您的情况下,将 df
和 df1
替换为 A
和 B
分别为:
In [13]:
df.update(df1)
df
Out[13]:
1 2 3
0 asd 10.401200 1.458484
1 fdsa 100.198157 2.015000
2 gfd -0.054764 0.389018
3 ff NaN 1.164172