[英]AttributeError: 'SMOTE' object has no attribute '_validate_data'
[英]AttributeError: 'SimpleImputer' object has no attribute '_validate_data' in PyCaret
我正在使用 PyCaret 并收到错误消息。
AttributeError: 'SimpleImputer' object has no attribute '_validate_data'
尝试创建一个基本实例。
# 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)
我所有的变量都是数字的(我强制了其中的两个,它们是布尔值)。 我的目标变量是label
,这是默认值。
我还安装了PyCaret
,导入了它的回归,并重新安装了scikit learn
,将SimpleImputer
导入为from 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
我的回溯如下:
这里的问题在于插补。 每个pycaret 文档的默认值为 'simple',但在这种情况下,您需要使imputation_type='iterative'
才能工作。
这是库不兼容,再次安装 pycaret: pip install pycaret pandas shap
美好的一天。 帮助我的是同时安装 pycaret=='2.3.10 ' 和 scikit-learn='0.23.2' 。 这两个版本是兼容的,一切正常。 我使用 conda 安装了 scikit-learn,因为旧版本无法通过 pip 获得,我使用 pip3 安装了 Pycaret。 我希望这可以帮助所有像我一样努力实现这项工作的人。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.