【发布时间】:2022-11-11 08:39:09
【问题描述】:
我被困在一个我似乎无法解决的问题上。我在另一台 PC 上使用 PyCaret 很好,最近有了一个新桌面。
我在旧 PC 上处理一个数据集,setup() 没有问题,PyCaret 对我的数据进行了预处理,没有任何问题。当我在我的相同的数据集在我的新桌面和新安装的 Jupyter 之后,我注意到我遇到了一个 ValueError: Setting a random_state has no effect since shuffle is False. You should leave random_state to its default (None), or set shuffle=True.,我觉得这很奇怪,但继续设置 fold_shuffle=True 来解决这个问题。
接下来,我遇到了AttributeError: 'Simple_Imputer' object has no attribute 'fill_value_categorical'。看来我在 setup() 的每一步都失败了。我浏览了论坛并找到了thread,在它的底部,@eddygeek 提到如果 sklearn 版本错误,PyCaret 设置为失败。这让我研究了我拥有的可能满足包之间依赖关系的包。
我注意到以下问题:
-
我收到几个错误:
ERROR: Command errored out with exit status 1: C:\Users\%%USER%%\anaconda3\python.exe'Ignoring numpy: markers 'python_version >= "3.8" and platform_system == "AIX"' don't match your environmentERROR: Could not find a version that satisfies the requirement scikit-learn==0.23.2Screenshot of more errors attached -
由于
Pandas Profiling Import Error: cannot import name 'soft_unicode' from 'markupsafe',Jupyter Notebook 无法启动。我通过安装markupsafe===2.0.1解决了这个问题,但这会导致 pandas-profiling 3.2.0 发出不兼容警告,说它需要 markupsafe 2.1.1 -
PyCaret 不断安装为 2.2.2 版本。我认为这就是为什么当最新的 PyCaret 2.3.10 与 scikit-learn >=1.0 一起工作时它一直在寻找 scikit-learn 0.23.2。我已经尝试多次卸载并重新安装 PyCaret,但它仍然是一样的。
我做了什么
我在与 Anaconda3 一起安装的 Python 3.9.12 上。我的 PyCaret 在 Anaconda Prompt 上安装了
pip install pycaret[full] --user。在我的
pip list中,我有:- scikit-learn 1.1.2
- 标记安全 2.1.1
- pandas-profiling 3.2.0
- pycaret 2.2.2
我已将
C:\Users\%%USER%%\AppData\Roaming\Python\Python39\Scripts添加到 PATH我真的无能为力,所以我希望我能得到一些建议。谢谢你。
【问题讨论】:
-
在遵循您的步骤 2 个月后,我遇到了同样的问题。 scikit-learn 1.1.3, pycaret 2.2.2 我的数据框没有时间特征。
标签: python scikit-learn anaconda jupyter pycaret