使用BorutaShap时出现"cannot import name 'binom_test' from 'scipy.stats"错误求助
解决BorutaShap导入时的
binom_test导入错误 问题原因
binom_test在SciPy 1.10.0及以后版本中,从scipy.stats模块迁移到了scipy.stats.contingency模块,但BorutaShap当前版本的代码仍在尝试从旧路径导入该函数,导致报错。
解决方案
- 回退SciPy版本:安装SciPy 1.9.3或更早版本,确保
binom_test仍在scipy.stats中:# 使用pip安装 pip install scipy==1.9.3 # 或使用conda安装 conda install scipy=1.9.3 - 手动修改BorutaShap源码:
- 先找到BorutaShap的安装路径:
查看输出中的pip show BorutaShapLocation字段,定位库的安装目录。 - 进入该目录,找到包含
from scipy.stats import binom_test语句的文件(通常是boruta_shap.py),将导入语句修改为:from scipy.stats.contingency import binom_test - 保存修改后重新运行代码即可。
- 先找到BorutaShap的安装路径:
- 等待官方修复:若不想修改源码或回退版本,可关注BorutaShap官方更新,等待发布兼容SciPy 1.10+的版本。
内容的提问来源于stack exchange,提问作者tegku
相关产品推荐
相关产品推荐

