2017-12-14 6 views
-1

두 개의 데이터 프레임 df1과 df2가 있습니다.팬더는 두 개의 데이터 프레임을 비교하여 새 열을 만듭니다.

DF1 :

ID  Label 
1  a 
2  b 
5  c 

DF2 :

ID 
1 
2 
3 

나는 두 dataframes를 비교하여 DF2에 새 열 "라벨"을 만들려고합니다. ID가 일치하면 df2의 레이블은 df1의 레이블과 같아야합니다. ID가 DF1 발생하지 않는 경우에, 나는 0 그래서 최종 DF2는 다음과 같이합니다 : 어떤 도움을 이해할 수있을 것이다

ID  Label 
1  a 
2  b 
3  0 

. 감사!

+0

https://pandas.pydata.org/pandas-docs/stable/merging.html –

답변

1

당신은 map을 사용하고 fillnaNaN의를 대체 할 수

df2['Label'] = df2['ID'].map(df1.set_index('ID')['Label']).fillna(0) 
print (df2) 
    ID Label 
0 1  a 
1 2  b 
2 3  0 
+1

대답에 대한 downvote에 대한 실마리 없음 그리고 질문을 downvote만큼 신경 쓰지 않지만 질문은 내가 "게으름에 대한 질문을 닫을 수 있다면"합병 판다 데이터 프레임 "에 대한 인터넷 검색에 대한 답변을 얻을 수 있습니다. 참조 : [Stack Overflow 사용자에 대한 연구 노력의 정도는 어느정도입니까?] (https://meta.stackoverflow.com/questions/261592/how-much-research-effort-is-expected-of-stack-overflow-users) –

관련 문제