更新时间:2022-11-03 来源:黑马程序员 浏览量:

Pandas中提供了一个重要的方法就是reindex(),该方法的作用是对原索引和新索引进行匹配,也就是说,新索引含有原索引的数据,而原索引数据按照新索引排序。如果新索引中没有原索引数据,那么程序不仅不会报错,而且会添加新的索引,并将值填充为NaN或者使用fill_vlues()填充其他值。
reindex()方法的语法格式如下:
DataFrame.reindex(labels=None, index=None, columns=None, axis=None, method=None, copy=True, level=None, fill_value=nan, limit=None, tolerance=None)
上述方法的部分参数含义如下:
(1)index:用作索引的新序列。
(2)method:插值填充方式。
(3)fill_value:引入缺失值时使用的替代值。
(4)limit:前向或者后向填充时的最大填充量。
为了能让大家更好地理解,接下来,通过一个简单的示例来演示重新索引的使用,具体代码如下。
In [19]: import pandas as pd ser_obj=pd.Series([1, 2, 3, 4, 5], index=['c', 'd', 'a', 'b', 'e']) Out[19]: c 1 d 2 a 3 b 4 e 5 dtype: int64 # 重新索引 In [20]: ser_obj2=ser_obj.reindex(['a', 'b', 'c', 'd', 'e', 'f']) Out[20]: a 3.0 b 4.0 c 1.0 d 2.0 e 5.0 f NaN dtype: float64
上述示例中,创建了一个ser_obj对象,并为其指定索引为“c、d、a、b、e”,接着又调用了reindex()方法对索引重新排列,变为“a、b、c、d、e、f”,由于索引“f”对应的值不存在,所以使用NaN对缺失的数据进行填充。
AI鸿蒙原生智能正式版课程,培养全端跨平台鸿蒙工程师
2026-03-10AI鸿蒙原生智能正式版课程,培养全端跨平台鸿蒙工程师
2026-03-10毕业16个工作日,平均薪资13180元,就业率100%,广州黑马AI智能应用开发(Java)学科20250529班
2026-03-06毕业32个工作日,平均薪资11147元,就业率95%,广州黑马AI智能应用开发(Java)学科20250326班
2026-03-05黑马程序员2025全国就业数据发布:全学科平均就业率92.07%,AI开发类就业平均薪资达11869.67元。
2026-03-05黑马全国校区齐开班!场面太太太壮观了!
2026-03-03