我试图用MultiIndex重新索引Panel。最终目标是能够像这样切片:
wp.loc[(1,slice(None)),:,:] #Access the panel fixing the first index of the multiIndex
但每当我尝试重新索引时,就像在这个例子中我得到了这种奇怪的行为。
wp = pd.Panel(pd.randn(4, 5, 4), items=['Item_1_1', 'Item_1_2','Item_2_1','Item_2_2'],major_axis=['a','b','c','d','e'],minor_axis=['A', 'B', 'C', 'D'])
a=[tuple([int(i) for i in item.split('_')[1:]]) for item in wp.items]
swp=wp.reindex(items=x)
但是当我试图访问我得到的小组的一个项目时;
In [101]: swp[1,1]
Out[101]:
A B C D
a NaN NaN NaN NaN
b NaN NaN NaN NaN
c NaN NaN NaN NaN
d NaN NaN NaN NaN
e NaN NaN NaN NaN
我做错了什么?
答案 0 :(得分:1)
您的新索引是一个元组列表,因此每个项目现在都被编入索引(1,1),(1,2)等。为了访问该项目,我假设您尝试使用{{1}进行访问你必须简单地索引swp[1,1]
(即swp[(1,1)]
)。