何时以及如何删除缺失数据

在 Python 中处理缺失数据

Suraj Donthi

Deep Learning & Computer Vision Consultant

删除类型

  1. 成对删除(Pairwise)
  2. 列表删除(Listwise)

注意:用于 MCAR 情况。

在 Python 中处理缺失数据

成对删除(Pairwise)

diabetes DataFrame

糖尿病数据集的成对删除 768 行 × 9 列

diabetes['Glucose'].mean()
121.687
diabetes.count()
763
diabetes['Glucose'].sum() / 
       diabetes['Glucose'].count()
121.687
在 Python 中处理缺失数据

列表删除(完整案例)

diabetes DataFrame

糖尿病数据集的列表删除 768 行 × 9 列

diabetes.dropna(subset=['Glucose'], 
                       how='any', 
                       inplace=True)
在 Python 中处理缺失数据

在 diabetes DataFrame 中的删除

msno.matrix(diabetes)

diabetes['Glucose'].isnull().sum()
5

糖尿病数据集的缺失矩阵图

在 Python 中处理缺失数据

在 diabetes DataFrame 中的删除

diabetes.dropna(subset=["Glucose"], how='any', inplace=True)
msno.matrix(diabetes)

糖尿病数据集的缺失矩阵图

在 Python 中处理缺失数据

在 diabetes DataFrame 中的删除

diabetes['BMI'].isnull().sum()
11
diabetes.dropna(subset=["BMI"], how='any', inplace=True)
msno.matrix(diabetes)

糖尿病数据集的缺失矩阵图

在 Python 中处理缺失数据

总结

  • 成对删除(Pairwise)
  • 列表删除(Listwise)
  • 仅在 MCAR 时使用删除
在 Python 中处理缺失数据

Passons à la pratique !

在 Python 中处理缺失数据

Preparing Video For Download...