Python 如何使用2个条件列在其他数据帧的基础上将列添加到pandas中的数据帧中?
亲爱的,我需要帮助来了解我可以用Python和Pandas解决下面的数学问题的方法 我有以下熊猫数据框:Python 如何使用2个条件列在其他数据帧的基础上将列添加到pandas中的数据帧中?,python,pandas,dataframe,Python,Pandas,Dataframe,亲爱的,我需要帮助来了解我可以用Python和Pandas解决下面的数学问题的方法 我有以下熊猫数据框: df1 = PRODUCT | YEAR | QTD | Table | 2020 | 110 | Pencil| 2021 | 220 | Car | 2019 | 330 | 第二个: df2 = PRODUCT | YEAR | PRICE | Table | 2019 | 0.5 | Table | 2020 | 0.7 | Pencil| 2019 | 190 | Penc
df1 =
PRODUCT | YEAR | QTD |
Table | 2020 | 110 |
Pencil| 2021 | 220 |
Car | 2019 | 330 |
第二个:
df2 =
PRODUCT | YEAR | PRICE |
Table | 2019 | 0.5 |
Table | 2020 | 0.7 |
Pencil| 2019 | 190 |
Pencil| 2020 | 210 |
Pencil| 2021 | 220 |
Car | 2019 | 310 |
Car | 2020 | 320 |
Car | 2021 | 330 |
如何合并两个dataframe以创建一个唯一的dataframe,如下所示:
df_Result =
PRODUCT | YEAR | QTD | PRICE
Table | 2020 | 110 | 0.7
Pencil| 2021 | 220 | 220
Car | 2019 | 330 | 310
如何创建条件来检查产品和年份以添加列价格对应项?使用左
:
输出
您应该能够在此处使用
merge()
函数。如果您熟悉Merge,它类似于SQL中的join
如果没有,那么您可以指定它应该在哪些列上匹配,以及希望联接“如何”工作
所以在这里,你会
df_result=pd.merge(left=df1,right=df2,how='left',on=['PRODUCT','YEAR']))
亲爱的@scott你的回答对我帮助很大。谢谢。
merged_df = df1.merge(df2, on = ['PRODUCT', 'YEAR'], how = 'left')
PRODUCT YEAR QTD PRICE
0 Table 2020 110 0.7
1 Pencil 2021 220 220.0
2 Car 2019 330 310.0