欢迎这位怪蜀黍来到《Python机器学习(九十)Pandas 去除null值 - 大码王 - 博客园》

关闭页面特效

 


数据集中通常会包含null值或空值,对于空值的处理有2种方式:

  • 删除带有null的行或列
  • 用非空值填充null项

检查null值

要处理数据集中的null值,首先要找出DataFrame中的哪些单元格是空的:

movies_df.isnull()

输出

复制代码
                                          rank  genre  description  director  actors   year  runtime  rating  votes  revenue_millions  metascore
Title
Guardians of the Galaxy                  False  False        False     False   False  False    False   False  False             False      False
Prometheus                               False  False        False     False   False  False    False   False  False             False      False
Split                                    False  False        False     False   False  False    False   False  False             False      False
Sing                                     False  False        False     False   False  False    False   False  False             False      False
Suicide Squad                            False  False        False     False   False  False    False   False  False             False      False
The Great Wall                           False  False        False     False   False  False    False   False  False             False      False
La La Land                               False  False        False     False   False  False    False   False  False             False      False

...                                        ...    ...          ...       ...     ...    ...      ...     ...    ...               ...        ...

Taare Zameen Par                         False  False        False     False   False  False    False   False  False             False      False
Take Me Home Tonight                     False  False        False     False   False  False    False   False  False             False       True
Resident Evil: Afterlife                 False  False        False     False   False  False    False   False  False             False      False
Project X                                False  False        False     False   False  False    False   False  False             False      False
Secret in Their Eyes                     False  False        False     False   False  False    False   False  False              True      False
Hostel: Part II                          False  False        False     False   False  False    False   False  False             False      False
Step Up 2: The Streets                   False  False        False     False   False  False    False   False  False             False      False
Search Party                             False  False        False     False   False  False    False   False  False              True      False
Nine Lives                               False  False        False     False   False  False    False   False  False             False      False

[1000 rows x 11 columns]
复制代码

isnull()方法返回一个DataFrame,其中每个单元格都是True或False,表示该单元格是不是null状态。

为了统计每一列的空值,可以使用聚合函数sum()进行求和:

movies_df.isnull().sum()

输出

复制代码
rank                  0
genre                 0
description           0
director              0
actors                0
year                  0
runtime               0
rating                0
votes                 0
revenue_millions    128
metascore            64
dtype: int64
复制代码

.isnull()本身并不是很有用,通常与sum()等其他方法一起使用。

现在可以看到,数据中revenueue_millions列有128个缺失值,metascore列有64个缺失值。

删除null值

当数据集中有少量缺失值时,建议删除null数据。

删除null值非常简单:

movies_df.dropna()

这个操作将删除任何至少有一个空值的行,但是它将返回一个新的DataFrame,而不更改原来的数据,更改原数据可以在这个方法中指定inplace=True

对于我们的数据集,这个操作将删除128行,其中revenue_millions为空,以及64行,其中metascore为空。

除了删除行,还可以通过设置axis=1删除空值列:

movies_df.dropna(axis=1)

在我们的数据集中,这个操作将删除revenue_millions和metascore列。

axis=1指轴1,即列,轴0是行,这是NumPy中的概念。

NumPy数组轴

NumPy多维数组由轴表示,其中axis-0表示列,axis-1表示行。

图

 posted on   大码王  阅读(5191)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具

成都

复制代码

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示

目录导航