我在导入sklearn包是时候遇到了ImportError: cannot import name 'plot_confusion_matrix' from ‘skleanm.metrics'
但是使用conda list和pip list 都有显示scikit-learn包的版本是在1.3.0,并不是版本过旧出现的问题,卸载重新安装sklearn包依旧遇到同样的问题。
最后发现是python解析器出现路径不同,如果你也和我一样多次安转了anaconda,那么可能是因为多次安装的原因,出现了两个解析器,可在cmd里查看
where python
看看是否出现两个以上的解释器,如果有的话,我的解决办法是删除其中一个
删除完后我发现自己的kernel不见了,应该是把原路径下的anaconda删除了,问题不大
在剩下的anaconda里面查找share\jupyter\kernels\python3可以看到个kernel.json,用记事本打开在argv下面可以看到路径把它改成自己剩下的python.exe路径即可。例如
"D:/anaconda\\python.exe"
然后对照jupyterlab的内核名称,把记事本里面的内核名称,在display_name位置后面例如
"display_name": "Python 3 (ipykernel)",
改成jupyterlab一样的名称。成功后关闭anaconda重新打开就可以发现不会再内核报错了,且sklearn也可以正常导入。
如果依旧无法运行,可以打开系统属性里的环境变量看看Path有没有kernels路径,如果没有添加上去。例如
D:\anaconda\share\jupyter\kernels
这是困扰了我很久的问题,希望能提供到帮助