학생 이름과 반 정보가 있는 테이블A가 있고 이름 정보만 있는 테이블B가 있다.
테이블B에 있는 이름 중 테이블A에 있는 이름과 같은 이름일 경우에는 반 정보를 입력하고, 없을 경우에는 '미정'이란 정보를 입력하자.
import pandas as pd
df1 = pd.DataFrame(data= {'이름': ['이서연', '김민준', '박지우'], '반': ['1-1', '2-1', '3-2']})
print(df1)
print()
df2 = pd.DataFrame(data= {'이름': ['박지우', '김소연']})
print(df2)
print()
df2['반'] = df2['이름'].map(lambda x : df1.query("이름 == '" + x + "' ").반.iloc[0] if len(df1.query("이름 == '" + x + "' ")) > 0 else '미정')
print(df2)
출력 결과
이름 반
0 이서연 1-1
1 김민준 2-1
2 박지우 3-2
이름
0 박지우
1 김소연
이름 반
0 박지우 3-2
1 김소연 미정