Мне нужно вызвать функцию, которая зацикливается в кадре данных, и вызывать различные функции в зависимости от того, находится ли имя столбца данных в другом кадре. Но я не могу найти самый эффективный и быстрый способ сделать это. Я пытался передать векторизованным способом, но это не похоже на работу. Также мне нужен способ сделать это быстрее, потому что исходный фрейм данных похож на 10k имен. Спасибо.
import pandas as pd
def multiply(value, date, df1, df2):
if value in df1['name'].values:
value_ = value * 2
elif value in df2['name'].values:
value_ = value * 3
return value_
df=pd.DataFrame({"name": ['joe','jack'], "date":[30,20]})
df1=pd.DataFrame({"name": ['joe','ben'], "date":[10,70]})
df2=pd.DataFrame({"name": ['ian','jack'], "date":[10,20]})
df['returned'] = multiply(df['name'].values, df['date'].values, df1, df2)