You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyCaret 3.0.x调用check_stats/compare_models报错:_CURRENT_EXPERIMENT未设置

解决思路

1. 确保setup()已正确执行且无异常

PyCaret的check_stats()和compare_models()必须依赖setup()初始化的实验环境才能运行,核心问题是当前会话中没有激活的实验实例。你需要:

  • 调用setup()时传入完整数据集并指定target参数(必填),确保执行过程无报错(比如数据格式错误、目标列不存在等)
  • 示例正确调用流程:
    from pycaret.classification import setup, check_stats, compare_models
    import pandas as pd
    
    data = pd.read_csv("your_dataset.csv")
    # 初始化实验,必须指定目标列
    exp = setup(data, target="your_target_column")
    

2. 显式绑定实验对象(避免全局变量冲突)

如果同一会话中存在多个实验或全局变量被意外重置,可通过传入experiment参数直接指定实验实例:

# 用setup返回的实验对象调用后续函数
stats_result = check_stats(experiment=exp)
model_comparison = compare_models(experiment=exp)

若之前的实验残留导致冲突,可先重置环境再重新初始化:

from pycaret.classification import reset_experiment

reset_experiment()
exp = setup(data, target="your_target_column")

3. 验证PyCaret版本与依赖完整性

  • 确认安装的是PyCaret 3.0.x正式版,避免开发版或损坏安装:
    pip show pycaret
    
  • 若依赖库版本不兼容,尝试重装PyCaret修复:
    pip install --upgrade pycaret
    

4. 检查代码执行上下文

  • 确保setup()在check_stats()/compare_models()之前执行,且在同一代码会话中(比如Jupyter Notebook不要跳过setup所在单元格)
  • 避免在隔离的函数/类中分开调用setup()和后续函数,确保它们共享同一全局上下文

内容的提问来源于stack exchange,提问作者user3634141

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 08:47:12