如何获取Pandas数据帧的sub_level索引值?

时间:2013-01-21 05:20:24

标签: pandas

我有一个多级数据框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并获取列值)?

1 个答案:

答案 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中讨论。