数学建模之数据分析【十】:处理Pandas中的缺失数据

公众号:快乐数模
小红书:学数模使我快乐

当没有提供一个或多个项目或整个单元的信息时,可能会出现缺失数据。缺失数据在现实生活中是一个非常大的问题。缺失数据在 Pandas 中也可以称为 NA(不可用)值。在 DataFrame 中,有时许多数据集都带有缺失数据,要么是因为它存在但未被收集,要么是它从未存在过。例如,假设接受调查的不同用户可能选择不分享他们的收入,一些用户可能选择不分享地址,这样许多数据集就丢失了。

在 Pandas 中,缺失数据用两个值表示:

  • None:None 是一个 Python 单例对象,常用于 Python 代码中缺失的数据。
  • NaN :NaN(Not a Number 的缩写),是所有使用标准 IEEE 浮点表示法的系统都可识别的特殊浮点值
    Pandas 将 None 和 NaN 视为本质上可以互换的,用于表示缺失值或空值。为了促进这种惯例,有几个有用的函数可用于检测、删除和替换。

一、使用 isnull() 和 notnull() 检查缺失值

为了检查 Pandas DataFrame 中的缺失值,我们使用函数 isnull() 和 notnull()。这两个函数都有助于检查值是否为 NaN。这些函数也可以在 Pandas Series 中使用,以便在系列中查找空值。

1.1 使用 isnull() 检查缺失值

为了检查 Pandas DataFrame 中的空值,我们使用 isnull() 函数,该函数返回对于 NaN 值为 True 的布尔值的数据框。

代码一:

import pandas as pd

import numpy as np

dict = {
   
   'First Score':[100, 90, np.nan, 95],
        'Second Score': [30, 45, 56, np.nan],
        'Third Score':[np.nan, 40, 80, 98]}
        
df = pd.DataFrame(dict)

df.isnull()

在这里插入图片描述
代码二:

import pandas as pd
data = pd.read_csv('employees.csv')
bool_series = pd.isnull(data['Gender'])
print(data[bool_series])

输出:如输出图所示,仅显示 Gender = NULL 的行。
在这里插入图片描述

1.2 使用notnull() 检查缺失值

为了检查 Pandas Dataframe 中的空值,我们使用 notnull() 函数,该函数返回布尔值的数据框,对于 NaN 值为 False。
代码三:

import pandas as pd
import numpy as np

dict = {
   
   'First Score':[100, 90, np.nan, 95],
        'Second Score': [30, 45, 56, np.nan],
        'Third Score':[np.nan, 40, 80, 98]}

df = pd.DataFrame(dict)
 
df.notnull()

在这里插入图片描述
代码四:

import pandas as pd
data = pd.read_csv('employees.csv')
bool_series = pd.notnull(data['Gender'])
print(data[bool_series])

仅显示 Gender = NOT NULL 的行。
在这里插入图片描述

二、使用 fillna()、replace() 和 interpolate() 填充缺失值

为了在数据集中填充空值,我们使用 fillna()、replace() 和 interpolate() 函数,这些函数用它们自己的某个值替换 NaN 值。所有这些函数都有助于在 DataFrame 的数据集中填充空值。Interp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清上尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值