Я пытаюсь создать столбец Pandas df, используя информацию, хранящуюся как в том же самом df, так и во внешнем df.
df=pd.DataFrame([["1/1/2019","1st Shift"],["1/1/2019","2nd Shift"],["1/1/2019","3rd Shift"],["1/2/2019","1st Shift"],["1/2/2019","2nd Shift"],["1/2/2019","3rd Shift"],["1/3/2019","1st Shift"],["1/3/2019","2nd Shift"],["1/3/2019","3rd Shift"]],columns=["date","shift"])
date shift
0 1/1/2019 1st Shift
1 1/1/2019 2nd Shift
2 1/1/2019 3rd Shift
3 1/2/2019 1st Shift
4 1/2/2019 2nd Shift
5 1/2/2019 3rd Shift
6 1/3/2019 1st Shift
7 1/3/2019 2nd Shift
8 1/3/2019 3rd Shift
lookup_df=pd.DataFrame([["1/1/2019","Andy","Barry","Charley"],["1/1/2019","Barry","Charley","Andy"],["1/1/2019","Andy","Barry","Charley"]],columns=["date","1st Shift","2nd Shift","3rd Shift"])
date 1st Shift 2nd Shift 3rd Shift
0 1/1/2019 Andy Barry Charley
1 1/2/2019 Barry Charley Andy
2 1/3/2019 Andy Barry Charley
Мой желаемый результат - добавить данные из lookup_df в df:
date shift staff
0 1/1/2019 1st Shift Andy
1 1/1/2019 2nd Shift Barry
2 1/1/2019 3rd Shift Charley
3 1/2/2019 1st Shift Barry
4 1/2/2019 2nd Shift Charley
5 1/2/2019 3rd Shift Andy
6 1/3/2019 1st Shift Andy
7 1/3/2019 2nd Shift Barry
8 1/3/2019 3rd Shift Charley
Однако, когда я пытаюсь:
df["staff"]=lookup_df[(lookup_df["date"]==df["date"])][df["shift"]]
Я получаю:
ValueError: Can only compare identically-labeled Series objects
Мысли или предложения?