如何在Pandas MultiIndex中引用Price与small对应的列?
Pandas多级列索引引用方法
针对你提到的多级列索引场景,直接用df('Price','small')是错误的,DataFrame的列引用要使用方括号[]而非圆括号。正确的引用方式有以下几种:
- 直接引用单个多级列:将列标签以元组形式传入方括号
df[('Price', 'small')] - 通过
xs方法筛选:适合更灵活的层级筛选场景# 直接定位(Price, small)列 df.xs(('Price', 'small'), axis=1) # 先选取Price一级索引下的所有列,再筛选small二级索引 df.xs('Price', level=0, axis=1)['small'] - 同时选择多个多级列:传入元组列表即可
df[[('Price', 'small'), ('Quantity', 'small')]]
补充说明:你示例中的df[idx]是选取整个多级索引对应的全部6列数据,若仅需获取Price与small对应的单列,使用上述任一方法即可。
内容的提问来源于stack exchange,提问作者elir1
相关产品推荐
相关产品推荐

