Я новичок в Пандах, и я пробовал следующее:
У меня есть два набора данных:
df5 = pd.DataFrame({"id":[1,2,3,4,5]})
df6 = pd.DataFrame({"ID":[1,2,3,4,5] ,"Name":["Tom","Dick","Harry","Mike","Sam"]})
Я хотел бы заменить идентификаторы в df5 фактическими именами из df6, используя apply или lambda apply. Я пробовал следующее:
def extract_name2 (x):
name = df6[df6["ID"] == x]["Name"]
return name
df5["id"].apply(extract_name2)
Это мой вывод:
Out[120]:
0 1 2 3 4
0 Tom NaN NaN NaN NaN
1 NaN Dick NaN NaN NaN
2 NaN NaN Harry NaN NaN
3 NaN NaN NaN Mike NaN
4 NaN NaN NaN NaN Sam
Я тоже пробовал:
df5["id"].apply(lambda x: df6[df6["ID"] == x]["Name"])
Но тот же результат
Кто-нибудь может мне помочь?