簡體   English   中英

如何將兩個數據框連接在一起

[英]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_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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM