Pandas处理缺失值的两种核心方法:删除与填充

顾星河
顾星河
发布时间:2026-10-14| 6人浏览过
原创

本文详解Pandas中处理缺失值的两种主要方式。首先介绍针对np.nan类型缺失值的直接删除(dropna)与均值/自定义值填充(fillna)操作;其次讲解如何处理带有特定标记的非标准缺失值,通过replace将其转换为np.nan后再进行常规处理。

Pandas处理缺失值的两种核心方法

在数据清洗过程中,处理缺失值是关键步骤,主要包含以下两种处理方式:

标准np.nan缺失值的处理

第一种情况是缺失值类型为标准的np.nan。

针对此类缺失值,可以使用dropna(axis='rows')方法直接删除包含缺失值的行。

另一种处理手段是使用fillna(df[].mean(), inplace=True)将缺失值替换为指定数值(如均值)或其他自定义值。

非标准标记缺失值的处理流程

第二种情况是缺失值并非标准的np.nan,而是由特定的默认标记值表示。

具体而言,当数据中存在缺失值且其类型为np.nan时,属于标准缺失值处理范畴。

代码实现示例


# 判断数据是否为NaN
# pd.isnull(df),pd.notnull(df),pd.isna(df)

# 读取数据
movie = pd.read_csv("./date/IMDB-Movie-Data.csv")

##第一种 删除
# pandas删除缺失值,使用dropna的前提是,缺失值的类型必须是np.nan
# 删除缺失值为np.nan的所在行
movie.dropna()


# 第二种 替换缺失值
# 替换存在缺失值的样本
# 替换 填充平均值
movie['Metascore'].fillna(movie['Metascore'].mean(), inplace=True)
# 替换 填充自定义值
movie['Metascore'].fillna(11, inplace=True)

当缺失值由非np.nan的特定标记表示时,属于非标准缺失值处理范畴。

对于非标准缺失值,第一步需将特定的默认标记值替换为np.nan。

可以使用df.replace(to_replace=, value=)函数执行替换操作。

完成替换后,即可按照标准缺失值的方法进行后续处理。

# 将其他标记的缺失值替换为np.nan mm = moive.replace(to_replace='默认值', value=np.nan)

以上内容涵盖了Pandas处理缺失值的核心逻辑,希望对读者有所帮助,欢迎继续支持本站获取更多技术资源。

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。