【发布时间】:2021-05-09 14:36:09
【问题描述】:
我是熊猫新手。给定两个数据框:
df_1
| product_id | product_price | invoice_total |
|---|---|---|
| p1 | 100 | 200 |
| p2 | 200 | 300 |
| p3 | 300 | 600 |
| p4 | 400 | 700 |
df_2
| product_id | quantity | invoice_total |
|---|---|---|
| p1 | 8 | 700 |
| p6 | 3 | 900 |
| p2 | 5 | 600 |
我想检查 df1 中的产品 id 是否与 df2 相似,如果是,则选择 df2 中的 invoice total 的值。
我已经尝试了 for 循环:
df_new = pd.DataFrame()
for i in df1.product_id:
for j in df2.product_id:
if i == j:
# return the value of df2.invoice_total and append to the df_new.
但我相信有更好的方法。
结果应该是这样的:
| product_id | invoice_total |
|---|---|
| p1 | 700 |
| p2 | 600 |
【问题讨论】:
-
相似是什么意思?相同的product_id?如果是这样,您可以使用合并
-
使用 pd.merge() 完成这项工作