pandas如何处理缺失值如何处理缺失值
在实际应用中对于数据进行分析的时候,经常能看见缺失值,下面来介绍一下如何利用pandas来处理缺失值。常见的缺失值
处理方式有,过滤、填充。
一、缺失值的判断一、缺失值的判断
pandas使用浮点值NaN(Not a Number)表示浮点数和非浮点数组中的缺失值,同时python内置None值也会被当作是缺失值。
a、Series的缺失值判断
s = Series(["a","b",np.nan,"c",None])
print(s)
'''
0 a
1 b
2 NaN
3 c
4 None
'''
#判断缺失值,如果是则返回True,否则返回False
print(s.isnull())
'''
0 False
1 False
2 True
3 False
4 True
'''
#输出缺失值的索引和值
print(s[s.isnull()])
'''
2 NaN
4 None
'''
b、DataFrame的缺失值判断
a = [[1,np.nan,2],[3,4,None]] data = DataFrame(a)
#DataFrame的None值变成了NaN
print(data)
'''
0 1 2
0 1 NaN 2.0
1 3 4.0 NaN
'''
print(data.isnull())
'''
0 1 2
0 False True False
1 False False True
'''
print(data[data.isnull()])
'''
0 1 2
0 NaN NaN NaN
1 NaN NaN NaN
'''
注意:在使用Series和DataFrame的时候,如果其中有值为None,Series会输出None,而DataFrame会输出NaN,但是对空
值判断没有影响。DataFrame使用isnull方法在输出空值的时候全为NaN,因为DataFrame对于False对应的位置,输出值会使
用NaN代替,而Series对于Fasel对应的位置是没有输出值的。
二、过滤缺失数据二、过滤缺失数据
a、、Series的缺失值过滤的缺失值过滤
s = Series(["a","b",np.nan,"c",None])
#通过使用notnull方法来获取非缺失数据
print(s[s.notnull()])
'''
0 a
1 b
3 c
'''
评论0