我有一个多级数据框df
:
>>> df
sales cash
STK_ID RPT_Date
000568 20120630 51.926 42.845
20120930 80.093 57.488
000596 20120630 22.278 18.247
20120930 32.585 26.177
000799 20120630 9.291 6.513
20120930 14.784 8.157
我想得到sub_level index 'STK_ID'
的值列表,它将返回['000568','000596','000799']
的列表。
是否有任何直接的功能(不使用reset_index
并获取列值)?
答案 0 :(得分:8)
您正在寻找index.levels
:
In [10]: df1.index.levels
Out[10]:
[Index(['000568', '000596', '000799'], dtype=object),
Int64Index([20120630, 20120930], dtype=int64)]
In [11]: df1.index.levels[0]
Out[11]: Index(['000568','000596','000799'], dtype=object)
请注意,您可以看到索引名称:
In [12]: df1.index.names
Out[12]: ['STK_ID', 'RPT_Date']
这些内容在文档here中讨论。