2017-11-11 5 views
0

첫 번째 데이터 프레임에는 다양한 ID 열이 포함되어 있고 두 번째 데이터 프레임에는 다양한 열이 포함되어 있습니다. 둘 중 하나는 No를 포함하므로 둘 사이의 링크를 발견했습니다. 그러나 데이터 프레임 2의 우편 번호 정보를 데이터 프레임 1의 올바른 연습에 할당하는 번호를 사용하여 이들을 서로 어떻게 연결할 수 있습니까?두 데이터 프레임을 함께 결합하는 방법

어떤 도움을 주시면 대단히 감사하겠습니다 !!!

날짜 프레임 1

ID place Items Cost 
0  5  10 2001.00 
1  12  2 20.98 
2  2  4 100.80 
3  7  7 199.60 

데이터 프레임이

ID No  Dr  Postcode 
0  1  Dr.K  BT94 7HX 
1  5  Dr.H  BT7 4MC 
2  3  Dr.Love BT9 1HE 
3  7  Dr.Kerr BT72 4TX 

내가 데이터 프레임 1에 새 열 '우편 번호'를 작성하고 올바른 연습

ID Place Items Cost Postcode  
0  5   10 BT7 4MC 
1  2   3 BT9 1HE 
2  22   8 BT62 4TU 
3  7   7 BT72 4TX 
에 우편 번호를 할당 할

어떻게하면됩니까 ??

+1

Harry, 샘플 데이터를 예상 출력과 함께 질문에 추가 할 수 있습니까? –

+0

@ScottBoston 내 probkem에 대한 자세한 내용을 추가했습니다. 이에 대한 도움이 환상적입니다. – Harry

답변

1

IIUC, 난 당신이 'left_on'입니다 찾고 병합 'right_on'매개 변수 무슨 생각 :

df1.merge(df2, left_on='Practice', right_on='Prac No') 

출력 :

ID_x Practice Items Cost ID_y Prac No  Dr Postcode 
0  0   5  10 2001.0  1  5  Dr.H BT7 4MC 
1  3   7  7 199.6  3  7 Dr.Kerr BT72 4TX 

또는 다른 방법 set_indexmap을 사용하는 것입니다 :

df1['Postcode'] = df1['Practice'].map(df2.set_index('Prac No')['Postcode']) 
df1 

출력 :

ID Practice Items  Cost Postcode 
0 0   5  10 2001.00 BT7 4MC 
1 1  12  2 20.98  NaN 
2 2   2  4 100.80  NaN 
3 3   7  7 199.60 BT72 4TX