python - 如何“逐行合并”熊猫数据框
问题描述
我想合并 2 个 DataFrame,这样在新的 DataFrame 中,第一行 = df1 的第 1 行,第二行是 df2 的第一行等。
A=pd.DataFrame({'A':[1,3,5], 'B': [7,9,11]}, index = ['bs','ss','db'])
B=pd.DataFrame({'A':[2,4,6], 'B': [8,10,12]}, index = ['bs','ss','db'])
请注意,行和列标签完全相同,并且两个数据框具有相同的维度。
所以所需的输出应该看起来像
A B
bs_a 1 7
bs_b 2 8
ss_a 3 9
ss_b 4 10
db_a 5 11
db_b 6 12
我不熟悉 pandas 合并,在查看文档后我仍然不知道该怎么做
解决方案
您可以concat
使用keys
,合并多个索引
s=pd.concat([A,B],keys=['a','b']).sort_index(level=1)
s.index=s.index.map('{0[1]}_{0[0]}'.format)
s
Out[225]:
A B
bs_a 1 7
bs_b 2 8
db_a 5 11
db_b 6 12
ss_a 3 9
ss_b 4 10
推荐阅读
- r - 如何在ggplot中没有异常值的情况下调整箱线图中的y轴大小?
- testng - Testng - 每个测试方法都可以有一个数据提供者输入吗?
- c# - 从派生类向基属性添加属性
- spring-cloud-dataflow - 用于 Kubernetes 安装的 Spring Cloud Data Flow Server
- recursion - F# sum 机器控制台
- java - 根据用户输入字符串确保我的 RNG 不会崩溃
- node.js - 在猫鼬模式中出乎意料
- vba - 在 VBA 中使用下一个和上一个按钮
- sql - 使用 group 子句在查询中执行 id 列表
- r - R中的ubBalance函数