You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用MeanEncoder时遇AttributeError:'Index'对象无'infer_objects'属性

问题解决方法

原因

这个报错源于feature-engine版本与pandas版本不兼容:infer_objects()方法在pandas 2.0及以上版本中已被移除,但旧版本的feature-engine仍在调用该方法。

解决方案

方案1:升级feature-engine到兼容版本

执行命令更新feature-engine,确保它适配当前pandas版本:

pip install --upgrade feature-engine

升级后重新运行原代码即可正常执行,x1和x2列会被替换为对应y值的均值。

方案2:降级pandas到支持infer_objects的版本

如果暂时不想升级feature-engine,可以将pandas降级到1.x版本:

pip install pandas==1.5.3

降级后再次运行代码即可恢复正常。

方案3:临时修改feature-engine源码(不推荐)

找到feature-engine库中MeanEncoder的对应代码位置,将counts.index = counts.index.infer_objects()替换为counts.index = counts.index.astype(object)。但这种方法需要定位库的安装路径,且后续升级库会覆盖修改,仅作为应急临时方案。

验证示例

升级feature-engine后运行代码,输出结果如下:

x1        x2
0  0.000000  0.666667
1  1.000000  0.666667
2  1.000000  0.666667
3  1.000000  1.000000
4  0.000000  0.000000

内容的提问来源于stack exchange,提问作者Bruno SALANON

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 23:52:01