【发布时间】:2016-10-10 11:41:03
【问题描述】:
首先我创建一个两级MultiIndex:
import numpy as np
import pandas as pd
ind = pd.MultiIndex.from_product([('X','Y'), ('a','b')])
我可以这样使用它:
pd.DataFrame(np.zeros((3,4)), columns=ind)
这给出了:
X Y
a b a b
0 0.0 0.0 0.0 0.0
1 0.0 0.0 0.0 0.0
2 0.0 0.0 0.0 0.0
但现在我正在尝试这样做:
dtype = [('Xa','f8'), ('Xb','i4'), ('Ya','f8'), ('Yb','i4')]
pd.DataFrame(np.zeros(3, dtype), columns=ind)
但这给出了:
Empty DataFrame
Columns: [(X, a), (X, b), (Y, a), (Y, b)]
Index: []
我期望与之前的结果类似,有三行。
也许更一般地说,我想做的是生成一个带有 MultiIndex 列的 Pandas DataFrame,其中列具有不同的类型(如示例中,a 是浮点数,但 b 是整数)。
【问题讨论】:
标签: python numpy pandas dataframe multi-index