我想通过h2o glm中的分类变量水平来估计预测变量的系数 . 例如,如果我的数据框具有产品价格(连续变量)和产品类型(分类变量),那么我想估算产品价格系数 . 在SAS中,您可以通过将模型效果指定为价格*类型来轻松完成此操作 . 我怎样才能在h2o或R中做同样的事情?
有一个interaction()函数,但它不能处理连续变量和分类变量之间的交互 . 有什么提示可以解决这个问题吗?
非常感谢,
set.seed(1234) x1 = rnorm(100,0,1) x2 = as.factor(rep(c("A","B","C","D"), each = 25)) y = as.factor(rep(0:1, each = 50)) data = data.frame(x1 = x1, x2 = x2, y = y)
可以使用公式参数中的“:”指定交互
# glm base example fit <- glm(data = data, y ~ x1 + x2 + x1:x2, family = "binomial") print(fit)
使用h2o.glm成对交互可以通过将列索引传递给interact参数来指定
# h2o.glm example library("h2o") h2o.init(nthreads = -1) data.hex = as.h2o(data) h2o_fit <- h2o.glm(x = 1:2, y = 3, training_frame = data.hex, family = "binomial", interactions = 1:2) h2o_fit@model$coefficients_table h2o.shutdown(prompt = F)
1 回答
可以使用公式参数中的“:”指定交互
使用h2o.glm成对交互可以通过将列索引传递给interact参数来指定