如何提取多索引数据框的索引名称,pandas
How to extract the index names of a multiindexed dataframe, pandas
我有一个多索引数据框,看起来像这样:
TQ bought
HT Detailed Instrument
Alternative Investments 359.445000
Alternative Investments 633.670000
Alternative Investments 237.970000
Alternative Investments 40.955000
HT 和 Detailed Instrument 是多指数列名称,TQ bought 代表 Pivot 的值 table。
我想提取索引的列名作为列表,这样:
idx_headers = ["HT", "Detailed Instrument"]
我已经尝试了 df.index.levels
,但这并没有生成所需的输出。有什么想法吗?
您正在寻找 df.index.names
。
参见:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.MultiIndex.html
使用index.names
:
print (df.index)
MultiIndex(levels=[['Alternative'], ['Investments']],
labels=[[0, 0, 0, 0], [0, 0, 0, 0]],
names=['HT Detailed', 'Instrument'])
print (df.index.names)
['HT Detailed', 'Instrument']
我有一个多索引数据框,看起来像这样:
TQ bought
HT Detailed Instrument
Alternative Investments 359.445000
Alternative Investments 633.670000
Alternative Investments 237.970000
Alternative Investments 40.955000
HT 和 Detailed Instrument 是多指数列名称,TQ bought 代表 Pivot 的值 table。
我想提取索引的列名作为列表,这样: idx_headers = ["HT", "Detailed Instrument"]
我已经尝试了 df.index.levels
,但这并没有生成所需的输出。有什么想法吗?
您正在寻找 df.index.names
。
参见:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.MultiIndex.html
使用index.names
:
print (df.index)
MultiIndex(levels=[['Alternative'], ['Investments']],
labels=[[0, 0, 0, 0], [0, 0, 0, 0]],
names=['HT Detailed', 'Instrument'])
print (df.index.names)
['HT Detailed', 'Instrument']