tk2*_*215 5 python merge dataframe pandas
我正在尝试基于“X”列合并 Python 中的两个数据框。
左侧数据框中的 X 列具有非唯一值,右侧数据框中的 X 列具有唯一值。如何将右侧数据框中的值合并到左侧数据框中?
我想将 df2 中的行合并到 df1 中以形成 df3
df1 = pd.DataFrame({'A': ['NA','EU','LA','ME'],
'B': [50, 23,21,100],
'X': ['IW233', 'IW455', 'IW455', 'IW100']})
df2 = pd.DataFrame({'C': [50, 12, 12, 11, 10, 16],
'X': ['IW455', 'IW200', 'IW233', 'IW150', 'IW175', 'IW100'],
'D': ['Aug', 'Sep', 'Jan', 'Feb', 'Dec', 'Nov']})
Run Code Online (Sandbox Code Playgroud)
df3:1
可以merge与左连接一起使用,如果只是X连接列on参数可以省略:
df = pd.merge(df1, df2, how='left')
print (df)
A B X C D
0 NA 50 IW233 12 Jan
1 EU 23 IW455 50 Aug
2 LA 21 IW455 50 Aug
3 ME 100 IW100 16 Nov
Run Code Online (Sandbox Code Playgroud)
如果有多个相同的列名:
df = pd.merge(df1, df2, on='X', how='left')
print (df)
A B X C D
0 NA 50 IW233 12 Jan
1 EU 23 IW455 50 Aug
2 LA 21 IW455 50 Aug
3 ME 100 IW100 16 Nov
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12638 次 |
| 最近记录: |