pandas 删除缺失值
示例
创建DataFrame时None,python的缺失值将转换为NaNpandas的缺失值:
In [11]: df = pd.DataFrame([[1, 2, None, 3], [4, None, 5, 6], [7, 8, 9, 10], [None, None, None, None]]) Out[11]: 0 1 2 3 0 1.0 2.0 NaN 3.0 1 4.0 NaN 5.0 6.0 2 7.0 8.0 9.0 10.0 3 NaN NaN NaN NaN
如果至少一列缺少值,则删除行
In [12]: df.dropna() Out[12]: 0 1 2 3 2 7.0 8.0 9.0 10.0
这将返回一个新的DataFrame。如果要更改原始DataFrame,请使用inplace参数(df.dropna(inplace=True))或将其分配回原始DataFrame()。df=df.dropna()
如果缺少该行中的所有值,则删除行
In [13]: df.dropna(how='all') Out[13]: 0 1 2 3 0 1.0 2.0 NaN 3.0 1 4.0 NaN 5.0 6.0 2 7.0 8.0 9.0 10.0
放下列不具有至少3个非缺失值
In [14]: df.dropna(axis=1, thresh=3) Out[14]: 0 3 0 1.0 3.0 1 4.0 6.0 2 7.0 10.0 3 NaN NaN