python - 在数据帧上正确合并不同长度的系列
问题描述
设置
我有一个df1
,
A B name
0 ABC DEF test1
1 UVW XYZ test2
和一个df2
,
C name
0 1 test1
和一个df3
,
C D name
0 1 1 test2
这样df12 = pd.merge(df1, df2, on=['name'])
给出,
A B name C
0 ABC DEF test1 1
并df13 = pd.merge(df1, df3, on=['name'])
给出,
A B name C D
0 UVW XYZ test2 1 1
问题
我如何随后添加第一个df2
和第二个df3
,df1
以便我获得一个df123
看起来像,
A B name C D
0 ABC DEF test1 1 NaN
1 UVW XYZ test2 1 1
我需要能够df123
循环构建。
解决方案
使用append
和merge
:
df = df1.merge(df2.append(df3, sort=False),on='name')
print(df)
A B name C D
0 ABC DEF test1 1 NaN
1 UVW XYZ test2 1 1.0
推荐阅读
- python - Windows 安装 pytorch 0.3
- adaptive-design - 将网站桌面版布局与 Flipkart.com 或 Amazon.com 等移动版布局区分开来的技术是什么?
- python-3.x - Python 3、Selenium、Os - 如何上传文件夹中的所有图像
- angular - .forEach 不是 fromArray 角度上的函数
- excel - 使用多个 critea 1 公式计算数据
- kdb - 创建具有单值的字典时键入错误
- ios - 更改数据源后如何清除 UICollectionView 正在使用的内存?
- c# - 如何在 Windows 窗体上更快地绘制圆圈?
- c# - 生成的 Excel 文件在不同系统中显示不同的日期值(Asp.net Web 应用程序)
- django - 当我使用动态 url 时,django 创建了问题页面未找到