Pandas之ReIndex重新索引的实现


Posted in Python onJune 25, 2019

约定:

import pandas as pd
import numpy as np

ReIndex重新索引

reindex()是pandas对象的一个重要方法,其作用是创建一个新索引的新对象。

一、对Series对象重新索引

se1=pd.Series([1,7,3,9],index=['d','c','a','f'])
se1

代码结果:

d    1
c    7
a    3
f    9
dtype: int64

调用reindex将会重新排序,缺失值则用NaN填补。

se2=se1.reindex(['a','b','c','d','e','f'])
se2

代码结果:

a    3.0
b    NaN
c    7.0
d    1.0
e    NaN
f    9.0
dtype: float64

传入method=” “重新索引时选择插值处理方式:

method='ffill'或'pad 前向填充

method='bfill'或'backfill 后向填充

se3=pd.Series(['blue','red','black'],index=[0,2,4])
se4=se3.reindex(range(6),method='ffill')
se4

代码结果:

0     blue
1     blue
2      red
3      red
4    black
5    black
dtype: object

二、对DataFrame对象重新索引

对于DataFrame对象,reindex能修改行索引和列索引。

df1=pd.DataFrame(np.arange(9).reshape(3,3),index=['a','c','d'],columns=['one','two','four'])
df1

代码结果:

one two four
a 0 1 2
c 3 4 5
d 6 7 8

默认对行索引重新排序

只传入一个序列不能重新排序列索引

df1.reindex(['a','b','c','d'])

代码结果:

one two four
a 0.0 1.0 2.0
b NaN NaN NaN
c 3.0 4.0 5.0
d 6.0 7.0 8.0
df1.reindex(index=['a','b','c','d'],columns=['one','two','three','four'])

代码结果:

one two three four
a 0.0 1.0 NaN 2.0
b NaN NaN NaN NaN
c 3.0 4.0 NaN 5.0
d 6.0 7.0 NaN 8.0

传入fill_value=n用n代替缺失值:

df1.reindex(index=['a','b','c','d'],columns=['one','two','three','four'],fill_value=100)

代码结果:

one two three four
a 0 1 100 2
b 100 100 100 100
c 3 4 100 5
d 6 7 100 8

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python获取mp3文件信息的方法
Jun 15 Python
Python数据类型详解(二)列表
May 08 Python
如何将python中的List转化成dictionary
Aug 15 Python
python操作MySQL 模拟简单银行转账操作
Sep 27 Python
Python入门之三角函数sin()函数实例详解
Nov 08 Python
Python3.4学习笔记之列表、数组操作示例
Mar 01 Python
Python常见数字运算操作实例小结
Mar 22 Python
Django学习之文件上传与下载
Oct 06 Python
Python 复平面绘图实例
Nov 21 Python
python创建子类的方法分析
Nov 28 Python
如何打包Python Web项目实现免安装一键启动的方法
May 21 Python
python和php哪个容易学
Jun 19 Python
Python中使用__new__实现单例模式并解析
Jun 25 #Python
pyQt5实时刷新界面的示例
Jun 25 #Python
Pandas之MultiIndex对象的示例详解
Jun 25 #Python
Python+threading模块对单个接口进行并发测试
Jun 25 #Python
python简单鼠标自动点击某区域的实例
Jun 25 #Python
详解pandas删除缺失数据(pd.dropna()方法)
Jun 25 #Python
python命令行参数用法实例分析
Jun 25 #Python
You might like
PHP中的按位与和按位或操作示例
2014/01/27 PHP
PHP 反射(Reflection)使用实例
2015/05/12 PHP
YII框架中使用memcache的方法详解
2017/08/02 PHP
php与阿里云短信接口接入操作案例分析
2020/05/27 PHP
从JavaScript 到 JQuery (1)学习小结
2009/02/12 Javascript
JavaScript 无符号右移赋值操作
2009/04/17 Javascript
JS自动缩小超出大小的图片
2012/10/12 Javascript
详解JavaScript对象和数组
2015/12/03 Javascript
js判断鼠标位置是否在某个div中的方法
2016/02/26 Javascript
javascript Promise简单学习使用方法小结
2016/05/17 Javascript
JS在一定时间内跳转页面及各种刷新页面的实现方法
2016/05/26 Javascript
鼠标经过出现气泡框的简单实例
2017/03/17 Javascript
angular2路由切换改变页面title的示例代码
2017/08/23 Javascript
JavaScript基础之流程控制语句的用法
2017/08/31 Javascript
Vue 让元素抖动/摆动起来的实现代码
2018/05/31 Javascript
js实现多张图片每隔一秒切换一张图片
2019/07/29 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
2020/11/11 Javascript
ESLint 是如何检查 .vue 文件的
2020/11/30 Vue.js
vue实现简易的双向数据绑定
2020/12/29 Vue.js
通过python顺序修改文件名字的方法
2018/07/11 Python
Python中的heapq模块源码详析
2019/01/08 Python
win10系统Anaconda和Pycharm的Tensorflow2.0之CPU和GPU版本安装教程
2019/12/03 Python
python的列表List求均值和中位数实例
2020/03/03 Python
Django ModelForm操作及验证方式
2020/03/30 Python
Python Pygame实现俄罗斯方块
2021/02/19 Python
Schutz鞋官方网站:Schutz Shoes
2017/12/13 全球购物
幼儿园新学期寄语
2014/01/18 职场文书
花店创业计划书范文
2014/02/07 职场文书
大学活动总结范文
2014/04/29 职场文书
广告学专业求职信
2014/06/19 职场文书
幼儿园端午节活动方案
2014/08/25 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
小学生通知书评语
2014/12/31 职场文书
期中考试复习计划
2015/01/19 职场文书
解析Java中的static关键字
2021/06/14 Java/Android