处理丢失的数据


import numpy as np
import pandas as pd
from pandas import Series,DataFrame

有两种丢失数据:
None

np.nan(NaN)

1. None
None是Python自带的,其类型为python object。因此,None不能参与到任何计算中。

a=np.array([1,None,3,4])
a.sum()    #None不能参与到计算中,会报错

2. np.nan(NaN)
np.nan是浮点类型,能参与到计算中。但计算的结果总是NaN。

a=np.array([1,np.nan,3,4])
a.sum()

nan

np.nansum(a)

8.0

3. pandas中的None与NaN
1) pandas中None与np.nan都视作np.nan

2) pandas中None与np.nan的操作
isnull()
notnull()
dropna(): 过滤丢失数据
fillna(): 填充丢失数据
(1)判断函数
isnull()
notnull()

(2) 过滤函数
dropna()

删除所有的空值

(3) 填充函数
fillna()

data.fillna(0)   #空值用0来填充

data.fillna(method='ffill')   #空值用前一个值来填充

data.fillna(method='bfill')   #空值用后一个值来进行填充

对于DataFrame来说,还要选择填充的轴axis。记住,对于DataFrame来说:
axis=0:列
axis=1:行

df.fillna(method='ffill',axis=0)    #按照该列的前一列的值来进行填充

fillna(method='ffill',axis=1)    #按照该行的前一个值来进行填充

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值