首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在pandas中创建多级数据帧?

如何在pandas中创建多级数据帧?
EN

Stack Overflow用户
提问于 2016-11-26 23:41:22
回答 2查看 9.4K关注 0票数 8

给定两个不同的df:

'A‘

代码语言:javascript
复制
            a  b         
2016-11-21  2  1
2016-11-22  3  4
2016-11-23  5  2 
2016-11-24  6  3 
2016-11-25  6  3

“b”

代码语言:javascript
复制
            a  b         
2016-11-21  3  0
2016-11-22  1  0
2016-11-23  1  6 
2016-11-24  1  5 
2016-11-25  0  2

如何创建此形状的“多级”数据帧:

'C‘

代码语言:javascript
复制
            A     B
            a  b  a  b           
2016-11-21  2  1  3  0
2016-11-22  3  4  1  0
2016-11-23  5  2  1  6
2016-11-24  6  3  1  5
2016-11-25  6  3  0  2

*index是一个'datatime‘对象

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-26 23:49:04

一种选择是使用MultiIndex()来构造AB的列级,然后将它们连接起来:

代码语言:javascript
复制
import pandas as pd
A.columns = pd.MultiIndex.from_product([['A'], A.columns])
B.columns = pd.MultiIndex.from_product([['B'], B.columns])
pd.concat([A, B], axis = 1)

#           A       B
#           a   b   a   b
#2016-11-21 2   1   3   0
#2016-11-22 3   4   1   0
#2016-11-23 5   2   1   6
#2016-11-24 6   3   1   5
#2016-11-25 6   3   0   2
票数 8
EN

Stack Overflow用户

发布于 2016-11-27 01:04:56

您可以使用带有参数keysconcat

代码语言:javascript
复制
df = pd.concat([A, B], axis = 1, keys=(list('AB')))
print (df)
            A     B   
            a  b  a  b
2016-11-21  2  1  3  0
2016-11-22  3  4  1  0
2016-11-23  5  2  1  6
2016-11-24  6  3  1  5
2016-11-25  6  3  0  2
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40820017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档