Python-将两个数据框与条件合并

时间:2020-03-26 21:38:14

标签: python pandas dataframe merge conditional-statements

df1 and df2 image

df1 =左侧的数据框,df2 =右侧的数据框。

我想将df2的iso_alpha和iso_num附加到df 1,条件是df1 ['Country_Name'] == df2 ['country']。

结果应如下所示。

Country | Year | Month | guest_1 | iso_alpha |iso_num
The Netherlands | 2012 | Jan | 735 | NLD |528

Df2 image

我尝试使用下面的代码,但收到错误消息。

new_df = sub.loc[sub['Country_Name'] == df1['country'], df1[:,-2]]

error = ValueError:只能比较标记相同的Series对象

请问您如何解决此问题。

1 个答案:

答案 0 :(得分:1)

您想要做的是合并DataFrame。

pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None,
         left_index=False, right_index=False, sort=True,
         suffixes=('_x', '_y'), copy=True, indicator=False,
         validate=None)

https://pandas.pydata.org/pandas-docs/stable/user_guide/merging.html