her*_*lla 7 python dataframe multi-level python-2.7 pandas
给出两个不同的df:
'一个'
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
Run Code Online (Sandbox Code Playgroud)
'B'
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
Run Code Online (Sandbox Code Playgroud)
如何创建此形状的"多级"数据框:
'C'
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
Run Code Online (Sandbox Code Playgroud)
*index是'datatime'对象
谢谢
一种选择是使用MultiIndex()构造柱水平A和B,然后将它们连接起来:
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
Run Code Online (Sandbox Code Playgroud)
您可以使用concat参数keys:
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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4423 次 |
| 最近记录: |