Python VLookup 无需合并即可获得输出

我有 2 个数据集,我需要'MAKE'根据'MODEL' 单独的数据框中的结果列获取列(不与现有数据框合并)


我可以使用下面的代码合并数据,


def vlookup_sample():


    df1 = pd.read_excel('tb1.xlsx', sheet_name='Sheet1')

    df2 = pd.read_excel('tb2.xlsx', sheet_name='Sheet1')


    df = pd.merge(df1, df2[['MODEL', 'MAKE']], on='MODEL', how='left')

    df["MAKE"].fillna("<n/a>", inplace=True)


    print df

数据集 1


ID  MODEL   REQUESTS    ORDERS

1   Golf    123          4

2   Passat  34           5

3   Model 3 500          8

4   M3      5            0

数据集2


MODEL   TYPE    MAKE

Golf    Sedan   Volkswagen

M3      Coupe   BMW

Model 3 Sedan   Tesla

预期输出:


MAKE

 Volkswagen

 Nan

 Tesla

BMW

如何将结果放入单独的数据中


哔哔one
浏览 139回答 1
1回答

森栏

您可以使用以下方法进行相同的合并并MAKE从合并输出中调用该列df.loc[]:new_df = df1.merge(df2,on='MODEL',how='left').loc[:,['MAKE']]#pd.merge(df1, df2[['MODEL', 'MAKE']], on='MODEL', how='left').loc[:,['MAKE']]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python