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

PyCharm Jupyter导入sklearn时报_argmax导入错误问题咨询

问题原因

该报错的核心触发逻辑是:PyCharm中Jupyter Notebook绑定的Python内核环境,与普通Python文件运行使用的环境不一致,两个环境下的scikit-learn存在版本/文件不匹配问题。
_argmax是scikit-learn旧版本中的内部工具符号,新版本已经将其从sklearn.utils.fixes模块中移除。当Notebook内核加载的sklearn存在跨版本文件残留、依赖版本不对应问题时,就会触发该导入错误;而普通Python文件调用的是依赖完整、版本匹配的环境,因此可以正常执行代码。

排查步骤

先确认两个运行环境的差异,分别在Notebook单元格、普通Python文件中执行以下代码,对比输出结果:

import sys
# 打印当前使用的Python解释器路径
print(sys.executable)
import sklearn
# 打印当前加载的scikit-learn版本
print(sklearn.__version__)

如果两段代码输出的解释器路径不一致,即可确认是内核环境绑定错误导致的问题。

解决方案
  • 切换Notebook内核:在PyCharm的Jupyter界面顶部工具栏,找到内核选择下拉菜单,选中普通Python文件正在使用的对应解释器,重启内核后重新运行导入代码即可。
  • 修复当前内核的sklearn依赖:如果需要保留当前使用的Notebook内核,直接在Notebook单元格中执行以下命令,强制重装完整的scikit-learn包,解决跨版本文件残留问题,执行完成后重启内核:
pip install --upgrade --force-reinstall scikit-learn

注意:无需单独安装或升级sklearn的子依赖,全量强制重装即可自动修复内部模块的引用关系。

  • 排查重名文件冲突:如果重装后问题仍存在,检查当前Notebook的工作目录下,是否存在命名为sklearn.py的自定义文件、或者手动修改过的sklearn相关源码文件,这类文件会被Python优先导入,覆盖官方库的模块内容,删除重名/修改过的冲突文件即可恢复正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 17:31:05