我使用 sklearn_pandas 和 sklearn 创建了一个 ML 管道。它看起来像这样。
features = ['ColA','ColB','ColC']
labels = 'ColD'
mapper = sklearn_pandas.DataFrameMapper([
('ColB',sklearn.preprocessing.StandardScaler()),
('ColC',sklearn.preprocessing.StandardScaler())
])
pipe = sklearn.pipeline.Pipeline([
('featurize', mapper),
('imputer', imputer),
('logreg', sklearn.linear_model.LogisticRegression())
])
cross_val_score = sklearn_pandas.cross_val_score(pipe,traindf[features],
traindf[labels],
'log_loss')
我喜欢我得到的模型和'log_loss'
值。如何使用此管道预测我的测试集?
当我这样做pipe.predict(testX[features])
时,我收到一个错误,上面写着:
"标准缩放器"对象没有属性"mean_"
我已经检查了我的测试集。看起来不错。
您必须先安装管道,就像适合任何模型/变压器一样:
pipe.fit(traindf[features], traindf[labels])