Pandas之ReIndex重新索引的实现

 更新时间:2019年06月25日 11:40:48   作者:yungeisme  
这篇文章主要介绍了Pandas之ReIndex重新索引的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

约定:

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 关键字与标识符超详细整理

    这篇文章主要给大家介绍了关于Python关键字、标识符和变量的相关资料,Python关键词是Python保留的具有特定含义的特殊词语,用于执行某些操作,Python标识符是用户定义的名称,而变量是计算机内存中的一块区域,存储对象的内存地址,以便引用对象的值,需要的朋友可以参考下
    2022-03-03
  • Python双版本计算器详解

    Python双版本计算器详解

    这篇文章主要介绍了如何用Python制作计算器,文章中有两个版本,代码详细,适合绝大部分朋友,如果你对python如何制作计算器有兴趣,可以参考下这篇文章
    2021-04-04
  • pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解

    pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解

    今天小编就为大家分享一篇pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python入门变量的定义及类型理解

    Python入门变量的定义及类型理解

    本文适合编程语言零基础的初学者,有打算转行学习python的可以添加关注,后续小编将会把自己转行学pyhton语言以来的所有笔记,和工作中总结的一些开发经验分享给大家
    2021-09-09
  • Django Rest framework认证组件详细用法

    Django Rest framework认证组件详细用法

    这篇文章主要介绍了Django Rest framework认证组件详细用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • 在Python程序中进行文件读取和写入操作的教程

    在Python程序中进行文件读取和写入操作的教程

    这篇文章主要介绍了在Python程序中进行文件读取和写入操作的教程,是Python学习当中的基础知识,需要的朋友可以参考下
    2015-04-04
  • Python中常用的内置函数

    Python中常用的内置函数

    这篇文章主要介绍了Python中常用的内置函数,主要介绍内容有map()、filter()、all()、int()等更多相关函数,需要的小伙伴可以参考一下
    2022-04-04
  • Python 类,property属性(简化属性的操作),@property,property()用法示例

    Python 类,property属性(简化属性的操作),@property,property()用法示例

    这篇文章主要介绍了Python 类,property属性(简化属性的操作),@property,property()用法,结合实例形式分析了Python类的定义、属性、方法及相关使用技巧,需要的朋友可以参考下
    2019-10-10
  • pycharm中出现no module named xlwt的原因及解决

    pycharm中出现no module named xlwt的原因及解决

    这篇文章主要介绍了pycharm中出现no module named xlwt的原因及解决方案,具有很好的参考价值,希望对大家有所帮助。
    2023-05-05
  • pycharm日志总是弹出“无法运行Git,未安装Git”的问题

    pycharm日志总是弹出“无法运行Git,未安装Git”的问题

    这篇文章主要介绍了pycharm日志总是弹出“无法运行Git,未安装Git”的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06

最新评论