pandas join merge

来源:互联网 发布:买了域名之后怎么绑定 编辑:程序博客网 时间:2024/06/01 19:10

SQL里面的连接在pandas里面是pd.merge,而用pd.DataFrame.join()和pd.merge的效果如何,达到一致呢?

Examples-------->>> caller = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3', 'K4', 'K5'],...                        'A': ['A0', 'A1', 'A2', 'A3', 'A4', 'A5']})>>> caller    A key0  A0  K01  A1  K12  A2  K23  A3  K34  A4  K45  A5  K5>>> other = pd.DataFrame({'key': ['K0', 'K1', 'K2'],...                       'B': ['B0', 'B1', 'B2']})>>> other    B key0  B0  K01  B1  K12  B2  K2Join DataFrames using their indexes.>>> caller.join(other, lsuffix='_caller', rsuffix='_other')>>> caller.join(other.set_index('key'), on='key')>>>     A key    B    0  A0  K0   B0    1  A1  K1   B1    2  A2  K2   B2    3  A3  K3  NaN    4  A4  K4  NaN    5  A5  K5  NaN>>> pd.merge(caller, other, on='key', how='left')>>>     A key    B    0  A0  K0   B0    1  A1  K1   B1    2  A2  K2   B2    3  A3  K3  NaN    4  A4  K4  NaN    5  A5  K5  NaN

pd.DataFrame.join里面, 必须有一个的on值对应成index,就是例子中的set_index(‘key’),才能把on=’key’,达到跟pd.merge一样的效果

0 0
原创粉丝点击