1 缺失值的处理
1.1 常规缺失值的处理
np.nan,NaN,None,NaT(时间数据类型的缺失值)等
df.isnull()
1.判断每一个df中的数据是否为缺失值,是则返回True,否则返回False
2.可以利用True为1,False为0的特性,sum()即为缺失值数量
df.notnull()
判断每个df中的值是否不为缺失值,是不为缺失值返回True,不是不为缺失值则返回False
df.dropna() 1.删除缺失值,可以指定axis来控制删除出现缺失值的行或者列 2.使用dropna( )中的参数how设置删除行列标准
- how=‘all’:只有当该列(或行)全为缺失值时,才删除该列(或行)
- how=‘any’:只要该列(或行)中有一个缺失值,就会将该列(或行)删除掉 默认
df.fillna(999)
fillna填充缺失值
平均数填充:df.fillna(df.字段名(列名).mean()) 使用某一字段(列)的平均数填充
众数填充:df.fillna(df.字段名(列名).mode()[0]) 使用某一字段(列)的第一个众数填充
中位数填充:df.fillna(df.字段名(列名).median()) 使用某一字段(列)的中位数填充
上下文填充:df.fillna(method=‘ffi