我尝试使用R h2o.predict
函数将预测作为由p0 p1 predict
列组成的数据帧,尽管即使在此代码中,我也尝试并提到了数据帧,但是现在我得到了由预测组成的一列。在下面,我将分享我的代码和结果。
我尝试对测试框架(train_df和test_df)进行一些更改,但是它不起作用。有人可以帮助我获得下面提到的预期结果吗?
h2o.init()
h2o_data = as.h2o(train_df)
train = h2o_data
Survived = 'Survived'
aml = h2o.automl(y=Survived,
training_frame = train,
max_runtime_secs = 12)
str(test_df)
test = as.h2o(test_df)
predictions = as.data.frame(h2o.predict(object = aml, newdata = test))
predictions
我除了类似的东西
p0 p1 predict
0.124124 0.8752341 0
0.124124 0.8752341 0
0.124124 0.8752341 0
0.124124 0.8752341 0
.
.
.
但是得到
predict
1 0.052932147
2 0.302577856
3 0.131041562
4 0.210355447
5 0.534559986
6 0.123824789
7 0.557775192
。 。
答案 0 :(得分:1)
我得到一列包含预测的列。
如果您的预测看起来像这样,则意味着您已经训练了回归模型而不是分类模型。我的猜测是您的"Survived"
列是二进制的,编码为0/1。由于它是数字,H2O认为您正在尝试进行回归。如果要进行分类,则需要将其转换为因子列,如下所示:
h2o_data = as.h2o(train_df)
train = h2o_data
Survived = 'Survived'
train[,Survived] = as.factor(train[,Survived])