给定一个 pandas.MultiIndex
,我想知道给定级别名称的级别编号。
所以,给定
index = pd.MultiIndex(
names=['ind1', 'ind2'],
levels=[['a'], ['b']],
codes=[[], []]
)
我想找出 ind1
和 ind2
的位置,而不必这样做
ind1_loc = [name for name in index.names if name == 'ind1'][0]
我觉得这绝对应该是可能的,但我在文档中找不到它。
我之所以要这样做是因为 iterrows()
和 itertuples()
都不会返回级别名称,因此您必须按级别编号访问返回的索引。
最佳答案
我相信如果需要级别名称或 .index
索引名称位置方法,您需要索引:
index = pd.MultiIndex(
names=['ind1', 'ind2'],
levels=[['a'], ['b']],
codes=[[], []]
)
print (index.names[1])
ind2
print (index.names.index('ind2'))
1
关于python - 获取 pandas.MultiIndex 中某个级别的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63244718/