[英]How can I join two dataframes together
我的第一個數據幀具有各種列,其中一個包含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
數據框2
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
我怎樣才能做到這一點??
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_index
和map
:
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.