2024-03-28 11:59:28 发布
网友
我使用H2O在一个大数据集上生成预测,其中一列是用户ID。但是,一旦我给数据集评分,预测数据集就不包含ID。。。唯一能让事情继续工作的是分数的顺序与输入数据集的顺序相匹配,这在我看来是相当草率的
有没有一种方法可以指示H2O在预测数据集中保留ID列,或者在评分后添加ID列,但仍在H2O中?在
我不太喜欢把分数和id一起带到python或R上,使用cbind之类的工具,但是如果这是唯一的选择,请加入进来。在
是的,你只需要从你想要的最终输出的帧中找到信息。这里有一个完整的例子:我正在做一个回归分析,根据他们的年龄和风险类别来预测患者的身高。(!) 在
import h2o h2o.init() patients = { 'age':[29, 33, 65], 'height':[188, 157, 175.1], 'name':["Tom", "Dick", "Harry"], 'risk':['A', 'B', 'B'] } train = h2o.H2OFrame.from_python( patients, destination_frame="patients" ) m = h2o.estimators.H2ODeepLearningEstimator() m.train(["age","risk"], "height", train) p = m.predict(train) train["name"].cbind(p["predict"])
由于我没有任何测试数据,为了举例说明,我对训练数据进行了预测。最后一步是获取train中的列,并与p中的列合并。(使用分类,您将获得其他列,您可能希望包含这些列,也可能不希望包含这些列。)
train
p
注意:cbind操作发生在您的H2O集群中,而不是在客户机上。因此,如果这是分布在多台机器上的1亿行数据,那么它的工作非常好。在
请注意,m.train(["age","height"], "risk", train)改为进行分类。在
m.train(["age","height"], "risk", train)
是的,你只需要从你想要的最终输出的帧中找到信息。这里有一个完整的例子:我正在做一个回归分析,根据他们的年龄和风险类别来预测患者的身高。(!) 在
由于我没有任何测试数据,为了举例说明,我对训练数据进行了预测。最后一步是获取
train
中的列,并与p
中的列合并。(使用分类,您将获得其他列,您可能希望包含这些列,也可能不希望包含这些列。)注意:cbind操作发生在您的H2O集群中,而不是在客户机上。因此,如果这是分布在多台机器上的1亿行数据,那么它的工作非常好。在
请注意,
m.train(["age","height"], "risk", train)
改为进行分类。在相关问题 更多 >
编程相关推荐