AttributeError: 'SimpleImputer' 对象在 PyCaret 中没有属性 '_validate_data'

Ole*_*siy 4 python scikit-learn pycaret

我正在使用 PyCaret 并收到错误消息。

AttributeError: 'SimpleImputer' object has no attribute '_validate_data'
Run Code Online (Sandbox Code Playgroud)

尝试创建一个基本实例。

# Create a basic PyCaret instance
import pycaret
from pycaret.regression import *
mlb_pycaret = setup(data = pycaret_df, target = 'pts', train_size = 0.8, numeric_features = ['home', 
'first_time_pitcher'], session_id = 123)
Run Code Online (Sandbox Code Playgroud)

我所有的变量都是数字的(我强制了其中的两个,它们是布尔值)。我的目标变量是label,这是默认值。

我还安装了PyCaret,导入了它的回归,然后重新安装scikit learn,导入SimpleImputerfrom sklearn.impute import SimpleImputer

OBP_avg Numeric
SLG_avg Numeric
SB_avg  Numeric
RBI_avg Numeric
R_avg   Numeric
home    Numeric
first_time_pitcher  Numeric
park_ratio_OBP  Numeric
park_ratio_SLG  Numeric
SO_avg_p    Numeric
pts_500_parkadj_p   Numeric
pts_500_parkadj Numeric
SLG_avg_parkadj Numeric
OPS_avg_parkadj Numeric
SLG_avg_parkadj_p   Numeric
OPS_avg_parkadj_p   Numeric
pts_BxP Numeric
SLG_BxP Numeric
OPS_BxP Numeric
whip_SO_BxP Numeric
whip_SO_B   Numeric
whip_SO_B_parkadj   Numeric
order   Numeric
ops x pts_500 order15   Numeric
ops x pts_500 parkadj   Numeric
ops23 x pts_500 Numeric
ops x pts_500 orderadj  Numeric
whip_p  Numeric
whip_SO_p   Numeric
whip_SO_parkadj_p   Numeric
whip_parkadj_p  Numeric
pts Label
Run Code Online (Sandbox Code Playgroud)

我的回溯如下:

hro*_*okr 8

这里的问题在于插补。每个pycaret 文档的默认值是“简单”,但在这种情况下,您需要使其imputation_type='iterative'正常工作。

  • 这是可行的,但也可能是你的 sklearn 版本错误。截至 6/2021,它应该是版本 0.23.2,而不是 0.24 版本。此时使用0.24也会出现同样的错误。 (2认同)