-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Labels
Description
Hello,
Apologies for all the issues I've raised recently. My coauthor and I have found a lot of value in mboost so we have been using it a lot lately.
From the docs:
For a categorical covariate with non-observed categories bols(x) and brandom(x) both assign a zero effect to these categories. However, the non-observed categories must be listed in levels(x). Thus, predictions are possible for new observations if they correspond to this category.
This behavior is ideal, however I don't believe it is working, but it is possible I am using levels(x) incorrectly.
library(mboost)
myData <- data.frame(
ZIP = factor(c("90046","91423", "90064"),
# include non-observed categoreies in levels
levels = c("90046","91423", "90064","95432")),
uninsured = factor(c(0,1,1))
)
model <- mboost(
uninsured ~ brandom(ZIP, df = 2), data = myData,
family = Binomial(), control =
boost_control(mstop = 1000, nu = 0.01, trace=TRUE)
)
# warning about dropping unobserved levels
newData <- data.frame(
ZIP = factor(c("90046","95432"),
# use same levels in new data
levels = c("90046","91423", "90064","95432"))
)
predict(model, newData)
# errors
Thank you for your help and the wonderful package.
Regards