Skip to content
Advertisement

vlookup in pandas python

I have two dataframes I want to check if a column from first dataframe contains values that are in the column of second dataframe, and if it does, create a column and add 1 to the row where it contains a value from first column first df:

A header Another header
First apple
Second orange
third banana
fourth tea

desired output in second df second df:

A header Another header match
First sheet 0
Second chair 0
third apple 1
fourth orange 1

Advertisement

Answer

Use Series.isin and convert boolean to 1/0 values by casting:

df2['match'] = df2['Another header'].isin(df1['Another header']).astype(int)

Or by numpy.where:

df2['match'] = np.where(df2['Another header'].isin(df1['Another header']), 1, 0)
1 People found this is helpful
Advertisement