创建conda环境出现TypeError:意外参数min_impurity_split如何修复?
Conda创建环境报错
TypeError: __init__() got an unexpected keyword argument 'min_impurity_split' 修复方案 这个报错是scikit-learn版本不兼容导致的:min_impurity_split是scikit-learn v0.22版本就被正式移除的参数,你要安装的依赖包代码里还在调用这个已废弃参数,但是conda默认给你装了更高版本的scikit-learn,因此触发冲突。
修复步骤如下:
- 如果你用
environment.yml文件创建环境,在依赖列表中添加scikit-learn版本约束:
v0.21.3是最后一个支持dependencies: - scikit-learn==0.21.3 # 其余原有依赖保持不变min_impurity_split参数的scikit-learn稳定版本。 - 如果你直接用
conda create命令创建环境,在命令中直接指定版本即可:conda create -n 你的环境名称 python=3.7 scikit-learn=0.21.3 其余所需包名 - 如果环境已经创建完成才出现报错,激活环境后重新安装对应版本的scikit-learn即可:
conda activate 你的环境名称 conda remove scikit-learn -y conda install scikit-learn=0.21.3
长期优化建议:如果相关代码是你可编辑的,把代码中的
min_impurity_split参数替换为新版scikit-learn的min_impurity_decrease参数,即可适配高版本scikit-learn,避免后续再出现同类版本冲突问题。
内容的提问来源于stack exchange,提问作者Ali
相关产品推荐
相关产品推荐

