3
我有兩個Pandas數據幀,我想在兩列中加入。這些列在每個df中的命名均不相同。在兩個不同名稱的列上合併兩個Pandas數據幀
In [11]: df1
Out[11]:
ID_1 ID_2 Hour
132 235 1
133 236 2
134 237 3
In [12]: df2
Out[12]:
ID Hour Price
132 1 17.2
133 2 14.6
134 3 21.3
我想獲得
In [13]: df3
Out[13]:
ID_1 ID_2 Hour ID Price
132 235 1 132 17.2
133 236 2 133 14.6
134 237 3 134 21.3
在SQL我會做類似如下:
select *
from df1
join df2 on df1.ID_1 = df2.ID
and df1.Hour = df2.Hour
我知道加入的不同名稱的列的方式,但這似乎不允許第二次加入的條件。
pd.merge(df1, df2, left_on='ID_1', right_on='ID', how='left')
...和語法加入多個相同名字的列被,但它們並不相同命名...
pd.merge(df1, df2, how='left', on=['ID', 'Hour'])
非常完美!謝謝! –