对Pandas MultiIndex(多重索引)详解


Posted in Python onNovember 16, 2018

创建多重索引

In [16]: df = pd.DataFrame(np.random.randn(3, 8), index=['A', 'B', 'C'], columns=index)

In [17]: df
Out[17]: 
first  bar     baz     foo     qux \
second  one  two  one  two  one  two  one 
A  0.895717 0.805244 -1.206412 2.565646 1.431256 1.340309 -1.170299 
B  0.410835 0.813850 0.132003 -0.827317 -0.076467 -1.187678 1.130127 
C  -1.413681 1.607920 1.024180 0.569605 0.875906 -2.211372 0.974466 

first    
second  two 
A  -0.226169 
B  -1.436737 
C  -2.006747

获得索引信息

get_level_values

In [23]: index.get_level_values(0)
Out[23]: Index(['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'], dtype='object', name='first')

In [24]: index.get_level_values('second')
Out[24]: Index(['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two'], dtype='object', name='second')

基本索引

In [25]: df['bar']
Out[25]: 
second  one  two
A  0.895717 0.805244
B  0.410835 0.813850
C  -1.413681 1.607920

In [26]: df['bar', 'one']
Out[26]: 
A 0.895717
B 0.410835
C -1.413681
Name: (bar, one), dtype: float64

In [27]: df['bar']['one']
Out[27]: 
A 0.895717
B 0.410835
C -1.413681
Name: one, dtype: float64

使用reindex对齐数据

数据准备

In [11]: s = pd.Series(np.random.randn(8), index=arrays)

In [12]: s
Out[12]: 
bar one -0.861849
  two -2.104569
baz one -0.494929
  two 1.071804
foo one 0.721555
  two -0.706771
qux one -1.039575
  two 0.271860
dtype: float64

s序列加(0~-2)索引的值,因为s[:-2]没有最后两个的索引,所以为NaN.s[::2]意思是步长为1.

In [34]: s + s[:-2]
Out[34]: 
bar one -1.723698
  two -4.209138
baz one -0.989859
  two 2.143608
foo one 1.443110
  two -1.413542
qux one   NaN
  two   NaN
dtype: float64

In [35]: s + s[::2]
Out[35]: 
bar one -1.723698
  two   NaN
baz one -0.989859
  two   NaN
foo one 1.443110
  two   NaN
qux one -2.079150
  two   NaN
dtype: float64

以上这篇对Pandas MultiIndex(多重索引)详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现发送邮件及附件功能
Mar 02 Python
Python图片裁剪实例代码(如头像裁剪)
Jun 21 Python
Python实现PS图像抽象画风效果的方法
Jan 23 Python
Go/Python/Erlang编程语言对比分析及示例代码
Apr 23 Python
浅谈Series和DataFrame中的sort_index方法
Jun 07 Python
Django中的静态文件管理过程解析
Aug 01 Python
python中利用matplotlib读取灰度图的例子
Dec 07 Python
python使用openCV遍历文件夹里所有视频文件并保存成图片
Jan 14 Python
Django import export实现数据库导入导出方式
Apr 03 Python
Jupyter Notebook 文件默认目录的查看以及更改步骤
Apr 14 Python
Python-openpyxl表格读取写入的案例详解
Nov 02 Python
pandas 数据类型转换的实现
Dec 29 Python
一百行python代码将图片转成字符画
Feb 19 #Python
Pandas GroupBy对象 索引与迭代方法
Nov 16 #Python
python实现指定字符串补全空格、前面填充0的方法
Nov 16 #Python
pandas 透视表中文字段排序方法
Nov 16 #Python
用Python实现数据的透视表的方法
Nov 16 #Python
pandas pivot_table() 按日期分多列数据的方法
Nov 16 #Python
python生成以及打开json、csv和txt文件的实例
Nov 16 #Python
You might like
PHP5.4中json_encode中文转码的变化小结
2013/01/30 PHP
php+ajax登录跳转登录实现思路
2016/07/31 PHP
mysql desc(DESCRIBE)命令实例讲解
2016/09/24 PHP
PHP性能测试工具xhprof安装与使用方法详解
2018/04/29 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
2020/01/22 PHP
jquery 最简单的属性菜单
2009/10/08 Javascript
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
jQuery对下拉框,单选框,多选框的操作
2014/02/21 Javascript
用JS在浏览器中创建下载文件
2014/03/05 Javascript
影响jQuery使用的14个方面
2014/09/01 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
JavaScript编写连连看小游戏
2015/07/07 Javascript
jQuery实现高亮显示网页关键词的方法
2015/08/07 Javascript
两款JS脚本判断手机浏览器类型跳转WAP手机网站
2015/10/16 Javascript
AngularJS入门教程之ng-class 指令用法
2016/08/01 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
2016/10/27 Javascript
JQuery.validationEngine表单验证插件(推荐)
2016/12/10 Javascript
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
2017/11/10 jQuery
如何检查一个对象是否为空
2019/04/11 Javascript
[02:16]2018年度CS GO最具人气选手-完美盛典
2018/12/16 DOTA
python字符串的常用操作方法小结
2016/05/21 Python
Python中格式化format()方法详解
2017/04/01 Python
详解Python中类的定义与使用
2017/04/11 Python
Python实现单词翻译功能
2017/06/06 Python
解决PySide+Python子线程更新UI线程的问题
2019/01/11 Python
python使用Plotly绘图工具绘制气泡图
2019/04/01 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
Python爬虫如何应对Cloudflare邮箱加密
2020/06/24 Python
幼儿园父亲节活动方案
2014/03/11 职场文书
升旗仪式主持词
2014/03/19 职场文书
优秀毕业生的求职信
2014/07/21 职场文书
课外活动总结
2015/02/04 职场文书
2015年体育教学工作总结
2015/05/20 职场文书
Nginx URL重写rewrite机制原理及使用实例
2021/04/01 Servers
python 爬取京东指定商品评论并进行情感分析
2021/05/27 Python
基于HTML十秒做出淘宝页面
2021/10/24 HTML / CSS