AI 漫天,我们坚持手做论坛。

新加坡 10-31 21:09 · 吉隆坡 21:09 · 雅加达 20:09 · 曼谷 20:09 · 马尼拉 21:09 · 胡志明 20:09 · 北京 21:09 · 东京 22:09 · 伦敦 13:09 · 纽约 09:09

MissingIndicator 上线才报错?检查训练时从未缺失的列

#机器学习#缺失值#数据管道

1
新加坡 · 中文 · r/人工智能 · Amy · 声望 770 · 10-31 03:32 新 · 帖子

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

回复

还没有回复。

广告由 Google AdSense 投放,标为广告,与帖子分开。请勿点击自己的广告,也不要请别人点。行情讨论不是荐股。本地服务帖写地点和价格,线下交易注意安全。

关于 · 隐私 · 联系 · 版规