我正在尝试绘制 cd 图,但我不明白为什么会出现错误 之前,我使用命令安装 Orangee
!pip install orange3
import Orange
from Orange.evaluation import compute_CD
这个错误:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-30-8ddf671e8aa9> in <module>
1 from scipy.stats import wilcoxon,friedmanchisquare,rankdata
2 import Orange
----> 3 from Orange.evaluation import compute_CD
ImportError: cannot import name 'compute_CD' from 'Orange.evaluation' (/usr/local/lib/python3.8/dist-packages/Orange/evaluation/__init__.py)
---------------------------------------------------------------------------
NOTE: If your import is failing due to a missing package, you can
manually install dependencies using either !pip or !apt.
To view examples of installing some common dependencies, click the
"Open Examples" button below.
---------------------------------------------------------------------------
之前,我使用命令安装 Orangee
!pip install orange3
import Orange
from Orange.evaluation import compute_CD
最新版本的
Orange
(撰写本文时为3.34.1)不再包含compute_CD
功能。我不知道原因,也不知道以后的版本中是否会恢复。
暂时,您可能想安装仍具有该功能的旧版本
Orange
,例如:
pip install orange3==3.30
其中包括
compute_CD
并且与Python 3.9兼容。
如果您使用的是较旧的 Python 版本,则旧版本的 Orange 应该可以完成这项工作,例如Orange 3.25 与 Python 3.6、3.7 或 3.8 兼容。
除了 @KDaneelOlivaw 的答案之外,您还可以使用预先弃用的代码版本来修补
Orange.evaluation.scoring.py
文件。
即
lib/site-packages/Orange/evaluation/
目录中__pycache__
目录scoring.py
文件scoring.py
替换为 Github 上预先弃用的版本import Orange
重新编译__pycache__
。(如果编译失败,则撤消步骤 2./3.. 也就是说,它在 Py 3.11.3 上适用于我)。