score_expression {sqlscore} | R Documentation |
Unevaluated prediction expressions for models
Description
Generate an unevaluated call corresponding to the predict step of the passed model. The call represents the response function of the linear predictor in terms of elementary functions on the underlying column names, and is suitable for direct translation into SQL.
Usage
score_expression(mod, response = NULL)
Arguments
mod |
A supported model object. |
response |
The name of a custom response function to apply to the linear predictor. |
Value
An unevaluated R call object representing the response function of the linear predictor.
Warning
The Binomial models in glmboost return coefficients which are 1/2 the coefficients fit by a call to glm(..., family=binomial(...)), because the response variable is internally recoded to -1 and +1. sqlscore multiplies the returned coefficients by 2 to put them back on the same scale as glm, and adds the glmboost offset to the intercept before multiplying.
Examples
# A Gaussian GLM including factors
mod <- glm(Sepal.Length ~ Sepal.Width + Petal.Length + Petal.Width + Species,
data=datasets::iris)
score_expression(mod)
# A binomial GLM - linear predictor is unaffected
mod <- glm(Sepal.Length > 5.0 ~ Sepal.Width + Petal.Length + Petal.Width + Species,
data=datasets::iris, family=binomial("logit"))
score_expression(mod)
#With a hand-specified response function
score_expression(mod, response="probit")
#With formula operators
x <- matrix(rnorm(100*20),100,20)
colnames(x) <- sapply(1:20, function(x) paste0("X", as.character(x)))
x <- as.data.frame(x)
mod <- glm(X2 ~ X3 + X5 + X15*X8, data=x)
score_expression(mod)