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



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

. . .

我得到一列包含预测。

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

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

最新更新