reindex更多的不是修改pandas对象的索引,而只是修改索引的顺序,如果修改的索引不存在就会使用默认的None代替此行。且不会修改原数组,要修改需要使用赋值语句。

series.reindex()

import pandas as pd

import numpy as np

obj = pd.Series(range(4),index=['d','b','a','c'])

print obj

d 0

b 1

a 2

c 3

dtype: int64

print obj.reindex(['a','c','d','e'])

1

a 2.0

b 1.0

c 3.0

d 0.0

e NaN

dtype: float64

多出的索引‘e'会被赋值NaN

内插或填充method

obj1=pd.Series(range(3),index=['a','e'])

print obj1.reindex(['a','e'],method='pad')

a 0

b 0

c 1

d 1

e 2

dtype: int64

ffill或pad: 前向(或进位)填充

bfill或backfill: 后向(或进位)填充

dataframe.reindex()

dataframe.reindex()可以改变(行)索引,列或两者。当只传入一个序列时,行被重新索引,一次可以对两个重新索引,可是插值只在行侧(0坐标轴)进行

frame = pd.DataFrame(np.arange(9).reshape((3,3)),'d'],columns=['c1','c2','c3'])

print frame

c1 c2 c3

a 0 1 2

c 3 4 5

d 6 7 8

states = ['c1','b2','c3']

frame.reindex(columns=states)

c1

b2

c3

a

0

NaN

2

c

3

NaN

5

d

6

NaN

8

列名不一样的会被赋值nan

frame_na=frame.reindex(index=['a',method='ffill',columns=states)

print frame_na

c1 b2 c3

a 0 NaN 2

b 0 NaN 2

c 3 NaN 5

d 6 NaN 8

插值只在行侧(0坐标轴)进行,但是我们可以在其之后,对nan值进行填充

frame_na.fillna(method='ffill',axis=1)

c1

b2

c3

a

0.0

0.0

2.0

b

0.0

0.0

2.0

c

3.0

3.0

5.0

d

6.0

6.0

8.0

以上这篇python pandas 对series和dataframe的重置索引reindex方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。

python 重置索引_python pandas 对series和dataframe的重置索引reindex方法相关推荐

  1. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍 一、pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主

    利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍 一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目 ...

  2. dataframe python格式_python3.6 pandas,Series和DataFrame基础格式与用法,附代码实例

    pandas 是基于numpy构建的库,加上numpy,主要用于科学运算和数据处理. 也是一个让我忘记昂贵的MATLAB,并且不得不复习SQL的库.. 一般引入规定: In [105]: from p ...

  3. python创建dataframe表格不显示_Python pandas .使用Series创建DataFrame不会保留dtype

    我有一个用例,我认为这很普遍,因此我认为自己的这个问题应该很容易为自己解答,但我找不到任何答案.考虑以下. df = pandas.DataFrame({"id": numpy.r ...

  4. Python 数据分析三剑客之 Pandas(一):认识 Pandas 及其 Series、DataFrame 对象

    CSDN 课程推荐:<迈向数据科学家:带你玩转Python数据分析>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python ...

  5. python dataframe的某一列变为list_NumPy中的ndarray与Pandas的Series和DataFrame之间的区别与转换...

    在数据分析中,经常涉及numpy中的ndarray对象与pandas的Series和DataFrame对象之间的转换,让一些开发者产生了困惑.本文将简单介绍这三种数据类型,并以金融市场数据为例,给出相 ...

  6. python效率计算公式_Python: Pandas运算的效率探讨以及如何选择高效的运算方式

    本文就Pandas的运行效率作一个对比的测试,来探讨用哪些方式,会使得运行效率较好. 测试环境如下: windows 7, 64位 python 3.5 pandas 0.19.2 numpy 1.1 ...

  7. dataframe 切片_NumPy中的ndarray与Pandas的Series和DataFrame之间的区别与转换

    在数据分析中,经常涉及numpy中的ndarray对象与pandas的Series和DataFrame对象之间的转换,让一些开发者产生了困惑.本文将简单介绍这三种数据类型,并以金融市场数据为例,给出相 ...

  8. python iloc函数_python pandas Series.iloc用法及代码示例

    基于位置的纯基于整数位置的索引. .iloc[]主要基于整数位置(来自0至length-1轴),但也可以与布尔数组一起使用. 允许的输入为: 整数,例如5. 整数列表或数组,例如[4, 3, 0]. ...

  9. Python实训day09am【Pandas、Series、DataFrame数据帧】

    Python实训-15天-博客汇总表 目录 1.Pandas 1.1.安装Pandas库 1.2.两种数据对象 2.一列数据Series 2.1.获取Series与数据个数 2.2.切片-loc-il ...

最新文章

  1. dialogue怎么读_法语助手|法汉-汉法词典 dialogue是什么意思_dialogue的中文解释和发音_dialogue的翻译_dialogue怎么读...
  2. SpringBoot 自带工具类~CollectionUtils
  3. L1-008. 求整数段和-PAT团体程序设计天梯赛GPLT
  4. PTA--Pop Sequence判定
  5. php中的条件语句,PHP中的条件语句和示例
  6. 写烂代码的人离职之后...
  7. 2019领克车展 Max Co币机诞生记
  8. 输入一行只包含加法和乘法的算式,输出结果
  9. 【NOIP2014普及组】子矩阵
  10. 初学者入门:认识STM32单片机
  11. 分布式并行计算:概述
  12. 为什么有时ping不通www baidu com但可以访问www baidu com网页
  13. 自动抢票之 12306 登录篇
  14. 布朗大学计算机科学案例,对话学长学姐|布朗大学计算机科学专业深剖篇
  15. Vue H5页面实现拍照解析二维码功能
  16. 【C#】菜鸟教程学习笔记(一)
  17. 解决Ranorex在测试执行过程中,当执行完调用外界库的方法后并没有执行其他的操作?
  18. MP3质量问题源于闪存芯片
  19. PyCon China 深圳站精彩回顾(附PPT及视频)
  20. nokia x android 界面,终于踏上Android路!Nokia X试玩

热门文章

  1. matlab 读取文件夹底下所有txt文件
  2. 计算机c盘能分区吗,电脑C盘怎么分区
  3. Myesclipe+SSH+jsp+mysql+tomcate实现一个简单的CRM客户关系管理系统
  4. npm ERR! the command again as root/Administrator
  5. 【APICloud系列|37】百度开放平台应用+,提升用户下载量操作步骤
  6. mysql concat 引号_在MySQL concat里面使用多个单引号,三引号的问题
  7. api 定位 微信小程序 精度_小程序的api是什么
  8. 语文课外运用计算机探究,[小学语文]计算机在小学写字教学中的运用之我见
  9. sessionStorage和localStorage的用法,不同点和相同点
  10. js sort方法根据数组中对象的某一个属性值进行排序(实用方法)