如何将两个数据帧连接在一起

2024-06-28 11:26:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我的第一个数据帧有很多列,其中一列包含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中创建一个新列“Postcode”,并将邮政编码指定给正确的做法

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

我该怎么做??你知道吗


Tags: 数据no框架信息id链接items编号
1条回答
网友
1楼 · 发布于 2024-06-28 11:26:40

IIUC,我想你要找的是合并中的'left\u on'和'right\u 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

相关问题 更多 >