我在 R 中使用 h2o.predict 函数时遇到问题

i have problem with using h2o.predict function in R

我尝试使用 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

。 . .

i get one column which consist predict.

如果您的预测看起来像这样,则表示您训练的是回归模型而不是分类模型。我的猜测是您的 "Survived" 列是二进制的,编码为 0/1。由于它是数字,H2O 认为您正在尝试进行回归。如果要做分类,需要转换成因子列如下:

h2o_data = as.h2o(train_df)
train = h2o_data
Survived = 'Survived'
train[,Survived] = as.factor(train[,Survived])