如何将预测与测试框架

时间:2018-03-23 11:36:49

标签: h2o sparkling-water

将预测框架与包含要素的h2oframe合并的任务不是通过water.rapids.Merge的合并方法完成的。

如何使用合并方法将预测框架合并到特征框架中,让我知道该方法的参数描述,这样可以正确调用方法吗?

merge(Frame leftFrame, Frame riteFrame, int[] leftCols, int[] riteCols, boolean allLeft, int[][] id_maps) 

merge(Frame leftFrame, Frame riteFrame, int[] leftCols, int[] riteCols, boolean allLeft, int[][] id_maps, int[] ascendingL, int[] ascendingR) 

什么是int[][] id_mapsint[] leftColsint[] riteCols参数?

将预测框架的合并框架合并到特征框架的正确方法是什么?

2 个答案:

答案 0 :(得分:0)

要回答您的主要问题,请使用add()

val predFrame = gbmModel.predict(dataFrame)
dataAndPredFrame = dataFrame.add(predFrame)

(从https://github.com/h2oai/sparkling-water/issues/194无耻地偷走)

merge()就像一个SQL连接,用于当你有两个不同大小的数据帧时;您要询问的参数用于指定两个帧中每个帧中的哪些列需要匹配才能进行连接。

我似乎无法找到任何苏打水文档(请在评论中发帖,如果有人知道它在哪里!),但你可以通过查看R或Python API文档获得这个想法:http://docs.h2o.ai/h2o/latest-stable/h2o-docs/data-munging/merging-data.html

答案 1 :(得分:0)

我不相信 h2o 将原始行顺序保持为上述状态。我使用 h2o.cbind 将原始数据集与预测合并。然后,根据预测值使用实际响应值,我重建了混淆矩阵。不幸的是,它与模型生成的混淆矩阵的计数非常不同。如果原始数据集中的行具有相同的顺序,则 R 脚本内部和外部的混淆矩阵计数应该相同。