Использование isin
:
df1[df1['delear'].isin(df2['delear'])]
Пример:
In [24]:
df1 = pd.DataFrame({'delear':np.arange(5)})
df2 = pd.DataFrame({'delear':[2,4]})
df1[df1['delear'].isin(df2['delear'])]
Out[24]:
delear
2 2
4 4
В ситуации, когда вы можете иметь повторяющиеся значения в df2 колонке 'дистрибьютер' вы можете получить уникальные значения по телефону unique
:
In [26]:
df2 = pd.DataFrame({'delear':[2,4,4,4,4]})
df2['delear'].unique()
Out[26]:
array([2, 4], dtype=int64)
Таким образом, код тогда становится:
df1[df1['delear'].isin(df2['delear'].unique())]
Незначительное дополнение 'df1 [df1 ['delear']. Isin (df2 ['delear']. Unique)]' может быть оптимальным, если имеется много повторяющихся значений? – Zero
Да, было бы, но ОП не указал или не показал ничего, чтобы указать, могут ли быть повторяющиеся значения, будет обновляться, тем не менее, – EdChum
. Мне не пришлось беспокоиться о «уникальном», поскольку я уже дедуплицировал данные. –