[英]AttributeError: 'SimpleImputer' object has no attribute '_validate_data' in PyCaret
I am using PyCaret and get an error.我正在使用 PyCaret 并收到错误消息。
AttributeError: 'SimpleImputer' object has no attribute '_validate_data'
Trying to create a basic instance.尝试创建一个基本实例。
# 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)
All my variables are numeric (I coerced two of them, which are boolean).我所有的变量都是数字的(我强制了其中的两个,它们是布尔值)。 My target variable is
label
and this is by default.我的目标变量是
label
,这是默认值。
I also installed PyCaret
, imported its regression, and re-installed scikit learn
, imported SimpleImputer
as from sklearn.impute import SimpleImputer
我还安装了
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
My traceback is the following:我的回溯如下:
The problem here is with the imputation.这里的问题在于插补。 The default per pycaret documentation is 'simple' but in this case, you need to make that
imputation_type='iterative'
for it to work.每个pycaret 文档的默认值为 'simple',但在这种情况下,您需要使
imputation_type='iterative'
才能工作。
It's incompatibility of library, install pycaret again with: pip install pycaret pandas shap这是库不兼容,再次安装 pycaret: pip install pycaret pandas shap
Good day all.美好的一天。 What helped me is installing pycaret=='2.3.10 ' and scikit-learn='0.23.2' at the same time.
帮助我的是同时安装 pycaret=='2.3.10 ' 和 scikit-learn='0.23.2' 。 These two version are compatible and all works fine.
这两个版本是兼容的,一切正常。 I installed scikit-learn using conda as the older versions are not available through pip, and I installed Pycaret using pip3.
我使用 conda 安装了 scikit-learn,因为旧版本无法通过 pip 获得,我使用 pip3 安装了 Pycaret。 I hope this helps all who have struggled to get this working like I did.
我希望这可以帮助所有像我一样努力实现这项工作的人。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.