我有2个数据框,我需要合并相交的多列。我没有得到我需要的结果,因为结果数据框的日期不匹配。
我要合并从dataframe1到(tmcN&date)的一对列Date&Segment | (tmcP和日期)来自dataframe2作为公共列。具体来说,“细分”列将与tmcN或tmcP匹配,而“日期”列将与日期匹配。我尝试了几种不同的方法,但无法正确配置它。
我的代码:
left2 = Speed.rename({'key':'Segment'}, axis=1)
right2 = Incident.rename({'key':'tmcN'}, axis=1)
Test = left2.merge(right2, left_on='Segment', right_on='tmcN', how='outer')
这仅将Segment与tmcN匹配,当尝试将Segment与tmcP双重合并时,笔记本电脑崩溃。谢谢您的协助。
答案 0 :(得分:0)
您可以尝试这样做(假设df1
是第一个数据帧,df2
是第二个数据帧)
使用第二个数据帧的tmcN
df = pd.merge(df1, df2, left_on=['Date', 'Segment'], right_on=['date', 'tmcN'])
使用第二个数据帧的tmcP
df = pd.merge(df1, df2, left_on=['Date', 'Segment'], right_on=['date', 'tmcP'])