返回顶部
首页 > 资讯 > 后端开发 > Python >Pandas中DataFrame的基本操作之重新索引讲解
  • 545
分享到

Pandas中DataFrame的基本操作之重新索引讲解

2024-04-02 19:04:59 545人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录pandas DataFrame之重新索引1.reindex可以对行和列索引2.reindex插值处理Pandas DataFrame重置索引案例Pandas DataFrame

Pandas DataFrame之重新索引

1.reindex可以对行和列索引

默认对行索引,加上关键字columns对列索引。

import pandas as pd
data=[[1,1,1,1],[2,2,2,2],[3,3,3,3],[4,4,4,4]]
df = pd.DataFrame(data,index=['d','b','c','a'])
print(df)

默认对列索引:如果是新的索引名将会用NaN

df=df.reindex(['a','b','c','d','e'])
print(df)

加上关键字columns对列重新索引:

df=df.reindex(columns=[2,1,3,4,0])
print(df)

2.reindex插值处理

对于index为有序的数据,我们有时候可能会进行一些插值处理,只需要在reindex加上method参数即可,参数如下表

(图片来源:截图于 利用python进行数据分析 Wes McKinney 著)

例子:

import pandas as pd 
data=[[1,1,1,1],[2,2,2,2],[3,3,3,3]]
df = pd.DataFrame(data,index=range(3))
print(df)
df=df.reindex([0,1,2,3,4,5],method='ffill')
print('--------------')
print(df)

reindex函数的相关参数:

(图片来源:截图于 利用Python进行数据分析 Wes McKinney 著)

Pandas DataFrame重置索引案例

import pandas as pd
import numpy as np
a=pd.DataFrame(np.random.randint(1,10,20).reshape(4,5))
print(a)
   0  1  2  3  4
0  1  3  2  7  6
1  8  2  2  7  2
2  2  6  6  2  5
3  4  1  6  8  9
b=a.sort_values(by=4)
print(b)
   0  1  2  3  4
1  8  2  2  7  2
2  2  6  6  2  5
0  1  3  2  7  6
3  4  1  6  8  9
### 重置索引:方法1
c=a.sort_values(by=4,ignore_index=True)
print(c)
   0  1  2  3  4
0  8  2  2  7  2
1  2  6  6  2  5
2  1  3  2  7  6
3  4  1  6  8  9
### 重置索引:方法2
d=b.reset_index(drop=True)
print(d)
   0  1  2  3  4
0  8  2  2  7  2
1  2  6  6  2  5
2  1  3  2  7  6
3  4  1  6  8  9

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Pandas中DataFrame的基本操作之重新索引讲解

本文链接: https://lsjlt.com/news/119416.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作