为了账号安全,请及时绑定邮箱和手机立即绑定

从 Pandas 数据框的 MultiIndex 中获取特定索引作为列表

从 Pandas 数据框的 MultiIndex 中获取特定索引作为列表

侃侃尔雅 2021-07-16 19:00:43
我想以列表形式获取 Pandas 数据框的特定索引MultiIndex。鉴于这个例子import pandas as pd; import numpy as npnp.random.seed(42)df = pd.DataFrame(np.random.randint(5, size=(5, 4)), columns=list('ABCD'))df.set_index(['A', 'B'], inplace=True)其中df定义为     C  DA B3 4  2  44 1  2  22 4  3  24 1  3  13 4  0  3我想提取[4 1 4 1 4]对应于第二个索引B。如何才能做到这一点?
查看完整描述

2 回答

?
SMILET

TA贡献1796条经验 获得超4个赞

使用 get_level_values


df.index.get_level_values(level=1).tolist()

Out[1040]: [4, 1, 4, 1, 4]

要么 reset_index


df.reset_index(level=1).B.tolist()

Out[1041]: [4, 1, 4, 1, 4]


查看完整回答
反对 回复 2021-07-27
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

此解决方案使用堆叠np.stack()和切片:

np.stack(df.index.values, axis=0)[:,1]


查看完整回答
反对 回复 2021-07-27
  • 2 回答
  • 0 关注
  • 513 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信