Amy 原创整理|资料核验:2026-10-31
MissingIndicator 用于生成缺失位置的布尔标记,本身不负责把空值填成均值或其他数值。
按 scikit-learn 官方文档,默认 features='missing-only' 只为拟合时出现缺失值的特征生成标记;默认 error_on_new=True。转换新数据时,若原本完整的列首次出现缺失,这一组合会报错。
教学示例:训练时A列有空值、B列完整,后来B列也缺失。问题不一定是程序随机出错,而可能是默认设置正在提示新的缺失模式。
Amy的处理建议:先调查B列为何开始缺失,再决定模型是否应接收这种情况。若设计上需要所有列都有固定的缺失标记,可评估 features='all';也可在明确风险后调整 error_on_new,但设置为False不会自动为新缺失列增加标记。
构建管道时,保留数值特征并组合这些标记,通常需要 FeatureUnion 或 ColumnTransformer 等结构;直接把整张数值表替换成布尔表,会丢掉原始数值信息。
官方来源:
https://scikit-learn.org/stable/modules/generated/sklearn.impute.MissingIndicator.html