Python 合并多个列

Python 合并多个列,python,pandas,Python,Pandas,我知道以前也有人问过类似的问题。不过,我的问题略有不同。我正在尝试跨多个列获取merge_asof的功能。以下是数据集: import pandas as pd left = pd.DataFrame({'a':[1,5,10]\ ,'business'['FRC','FRC','FRC']\ ,'left_val':['a','b','c']}) right = pd.DataFrame({'a':[1,2,3,6

我知道以前也有人问过类似的问题。不过,我的问题略有不同。我正在尝试跨多个列获取merge_asof的功能。以下是数据集:

import pandas as pd
left = pd.DataFrame({'a':[1,5,10]\
                    ,'business'['FRC','FRC','FRC']\
                    ,'left_val':['a','b','c']})
right = pd.DataFrame({'a':[1,2,3,6]\
                    ,'business':['ED','ED','ED','ED']\
                    ,'right_val':[1,2,3,6]})
pd.merge_asof(left,right,on='a',direction='forward')
我得到的结果是:


我想把生意也包括进来。因此,联接的正确值和业务应该为所有值显示NaN。

我相信您需要参数,具体如下:

发件人:列名或列名列表 在执行合并操作之前匹配这些列


我相信您需要以下参数:

发件人:列名或列名列表 在执行合并操作之前匹配这些列

print (pd.merge_asof(left,right,on='a',direction='forward', by='business'))
    a business left_val  right_val
0   1      FRC        a        NaN
1   5      FRC        b        NaN
2  10      FRC        c        NaN