处理丢失数据
有两种丢失数据:
- None
- np.nan(NaN)
1. None
None是Python自带的,其类型为python object。因此,None不能参与到任何计算中。
In [1]:
#查看None的数据类型
2. np.nan(NaN)
np.nan是浮点类型,能参与到计算中。但计算的结果总是NaN。
In [2]:
#查看np.nan的数据类型
3. pandas中的None与NaN
1) pandas中None与np.nan都视作np.nan
创建DataFrame
In [18]:
#将某些数组元素赋值为nan
2) pandas处理空值操作
isnull()
notnull()
dropna()
: 过滤丢失数据fillna()
: 填充丢失数据
In [3]:
#创建DataFrame,给其中某些元素赋值为nan
(1)判断函数
isnull()
notnull()
- df.notnull/isnull().any()/all()
In [4]:
#过滤df中的空值(只保留没有空值的行)
df.dropna() 可以选择过滤的是行还是列(默认为行):axis中0表示行,1表示的列
(3) 填充函数 Series/DataFrame
fillna()
:value和method参数
可以选择前向填充还是后向填充
method 控制填充的方式 bfill ffill
============================================
练习7:
- 简述None与NaN的区别
- 假设张三李四参加模拟考试,但张三因为突然想明白人生放弃了英语考试,因此记为None,请据此创建一个DataFrame,命名为ddd3
- 老师决定根据用数学的分数填充张三的英语成绩,如何实现? 用李四的英语成绩填充张三的英语成绩?
============================================
原文地址:https://www.cnblogs.com/bilx/p/11611830.html
时间: 2024-10-09 19:25:24