您的位置:首页 > 运维架构

Pandas学习笔记 - dropna()过滤缺失数据

2018-12-18 10:10 225 查看
对于Series对象:
import pandas as pd
import numpy as np
d = pd.Series([None,'tom','mary',np.nan,'ross','joey'])
d
'''
0    None
1     tom
2    mary
3     NaN
4    ross
5    joey
dtype: object
'''

d.isnull()   # None也会被当作缺失值
'''
0     True
1    False
2    False
3     True
4    False
5    False
dtype: bool
'''

d.dropna()  # 过滤缺失值
'''
1     tom
2    mary
4    ross
5    joey
dtype: object
'''
# 也可以通过布尔型索引达到目的
d[d.notnull()]
对于DataFrame对象:
df = pd.DataFrame([[1.,6.5,3.],[1.,np.nan,np.nan],
[np.nan,np.nan,np.nan],[np.nan,6.5,3.]])
df
'''
0	1	2
0	1.0	6.5	3.0
1	1.0	NaN	NaN
2	NaN	NaN	NaN
3	NaN	6.5	3.0
'''
# dropna默认丢弃任何含有缺失值的行
c = df.dropna()
# 传入how='all'参数只丢弃全部为NA的行
e = df.dropna(how='all')
# 丢弃列
f = df.dropna(axis=1,how='all')
# 保留至少存在2个非缺失值的行
g = df.dropna(thresh=2)
'''
0	1	2
0	1.0	6.5	3.0
3	NaN	6.5	3.0
'''
阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: