pandas层级索引
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,层级索引(hierarchical indexing)下面创建一个Series, 在输入索引Index时,输入了由两个子list组成的list,第一个子list是外层索引,第二个list是内层索引。示
千家信息网最后更新 2025年02月02日pandas层级索引
层级索引(hierarchical indexing)
下面创建一个Series, 在输入索引Index时,输入了由两个子list组成的list,
第一个子list是外层索引,第二个list是内层索引。
示例代码:
import pandas as pdimport numpy as npser_obj = pd.Series(np.random.randn(12),index=[ ['a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'd', 'd', 'd'], [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2] ])print(ser_obj)
运行结果:
a 0 0.099174 1 -0.310414 2 -0.558047b 0 1.742445 1 1.152924 2 -0.725332c 0 -0.150638 1 0.251660 2 0.063387d 0 1.080605 1 0.567547 2 -0.154148dtype: float64
MultiIndex索引对象
- 打印这个Series的索引类型,显示是MultiIndex
- 直接将索引打印出来,可以看到有levels,和labels两个信息。levels表示两个层级中分别有哪些标签,labels是每个位置分别是什么标签。
示例代码:
print(type(ser_obj.index))print(ser_obj.index)
运行结果:
MultiIndex(levels=[['a', 'b', 'c', 'd'], [0, 1, 2]], labels=[[0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3], [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2]])
选取子集
- 根据索引获取数据。因为现在有两层索引,当通过外层索引获取数据的时候,可以直接利用外层索引的标签来获取。
- 当要通过内层索引获取数据的时候,在list中传入两个元素,前者是表示要选取的外层索引,后者表示要选取的内层索引。
1. 外层选取:
ser_obj['outer_label']
示例代码:
# 外层选取print(ser_obj['c'])
运行结果:
0 -1.3620961 1.5580912 -0.452313dtype: float64
2. 内层选取:
ser_obj[:, 'inner_label']
示例代码:
# 内层选取print(ser_obj[:, 2])
运行结果:
a 0.826662b 0.015426c -0.452313d -0.051063dtype: float64
常用于分组操作、透视表的生成等
交换分层顺序
1. swaplevel()
.swaplevel( )交换内层与外层索引。
示例代码:
print(ser_obj.swaplevel())
运行结果:
0 a 0.0991741 a -0.3104142 a -0.5580470 b 1.7424451 b 1.1529242 b -0.7253320 c -0.1506381 c 0.2516602 c 0.0633870 d 1.0806051 d 0.5675472 d -0.154148dtype: float64
交换并排序分层
sort_index()
.sort_index() 先对外层索引进行排序,再对内层索引进行排序,默认是升序。
示例代码:
# 交换并排序分层print(ser_obj.swaplevel().sort_index())
运行结果:
0 a 0.099174 b 1.742445 c -0.150638 d 1.0806051 a -0.310414 b 1.152924 c 0.251660 d 0.5675472 a -0.558047 b -0.725332 c 0.063387 d -0.154148dtype: float64
索引
内层
外层
代码
示例
结果
运行
两个
排序
数据
标签
层级
时候
输入
个子
位置
信息
元素
升序
子集
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
杭州盛立金融软件开发岗怎么样
软件开发培训机构场地合作
软件开发商简介
国家宣讲网络安全知识
计算机网络技术新生课程表
银川景区软件开发
网络安全经历哪四个阶段
数据库应用技术思维导图
服务器操作系统生态
公安机关网络安全工作会议讲话
规范软件开发费用预算
软件开发公司财务部工作职责
浪潮信息ai服务器全球市占率
工业互联网平台骆驼科技张建
公安局 网络安全部门
服务器发布软件
辽宁服务器机柜厂家现货
数据库的事务对象
上传用户信息到云数据库
哈利波特服务器没有霍格沃茨
网络技术认识实习报告心得
提高网络技术水平
网易怎么在服务器装材质
一旦连接主服务器失败
用公共网络安全么
数据库技术特点的是
电脑网络技术文案配图
潍坊第一页网络技术
什么基金是网络安全的
汽车行业软件开发工资