pandas multiIndex可能有不同数量的级别吗?例如,如果您使用的是索引A1, A2, and B
,那么A
有子级1
和2
,但B
没有子级别?如果是这样,你怎么做?
例如,您是否可以生成如下所示的数据框:
A B
1 2
val1 val2 val3
我希望避免向B
添加子级别的原因是我将使用此数据框创建一个如下所示的JSON对象:
[
{
A: {
1: val1,
2: val2
},
B: val3
},
...
]
答案 0 :(得分:0)
MultiIndex不支持这种行为,但您可以做的是将DataFrame重新排列为如下所示:
>>> d = {'A': {1: 'val1', 2: 'val2'}, 'B': 'val3'}
>>> pd.DataFrame(d)
A B
1 val1 val3
2 val2 val3
这样A [1]仍然指向val1而A [2]仍然指向val2,但唯一的复杂因素是你必须将B视为一个系列。