Python 处理缺失值
1.删除
- 删除所有缺失值的行 df.dropna()
- 删除所有缺失值的列 df.dropna(axis = ‘columns’)/df.dropna(axis = 1)
- 删除带有nan的行df.dropna(how = ‘nan’)
- 删除所有值都缺失的行 df.dropna(how = ‘all’)
- 删除至少有两个缺失值的行 df.dropna(thresh = 2)
- 删除指定的列范围 df.dropna(subset = [‘B’,‘D’])
- 删除指定列的缺失值 df.col.dropna()
- 使删除的结果生效 df.dropna(inplace = True)
2.填充
- 填充固定值(常数) df.fillna(100)
- 填充固定值(字典) df.fillna({0:10,1:20,2:30})
- 使填充的结果生效 df.fillna(0,inplace=True)
- 用前一个非缺失值填充 df.fillna(method=‘ffill/pad’)
- 用后一个非缺失值填充 df.fillna(method=‘bfill/backfill’)
- 指定填充两个个数值 df.fillna(method=‘bfill’, limit=2)
- 按行填充(axis=1)一个值 df.fillna(method=“ffill”, limit=1, axis=1)