python笔记9:数据处理之缺失值处理

# -*- coding: utf-8 -*-

#概念:由于某些原因,导致数据中的某些列的值缺失,这种情况可能是正常的,也可能是不正常的。我们可以选择不处理、补齐、或删除对应的行

#dropna函数作用:去除数据结构中值为空的数据。
#dropna函数语法:dropna()

from pandas import read_csv

df = read_csv("D:/workspaces/python/pythonStudy/9.csv",encoding='utf-8')
#查看导入结果,可以看到有的列的值是空的NaN

#有些情况,我们可能有这样的需求:如果某个列的值是某个字符串,那么,我们也认为它是空的:
df = read_csv("D:/workspaces/python/pythonStudy/9.csv",              
              na_values=['null'])
#观察得到的df对象,可以看到csv文件中的null,读取出来也是NaN了

#找出空值的位置:
isNa = df.isnull() #返回的是一个数据框对象,元素值都是布尔类型的

#获取空值所在的行
df[isNa.any(axis=1)] #只要某一行,有任意一个值为空,就会返回该行,执行结果是一个数据框,里面都是包含空值的行

df[isNa[['key']].any(axis=1)] #返回名称为key的列存在空值的行
df[isNa[['key','value']].any(axis=1)] #返回名称为key或value的列存在空值的行(任意一列存在空值则返回)


#对空值进行填充:
df.fillna('未知')

#删除包含空值的行
newDf = df.dropna()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值