Functions used in definition of smooth terms within a model formulas. The function does not evaluate a (spline) smooth - it exists purely to help set up a model using spline based smooths.
s(...)
t2(...)
The function defined here are just simple wrappers of the respective
functions of the mgcv package. When using them, please cite the
appropriate references obtained via citation("mgcv")
.
brms uses the "random effects" parameterization of smoothing splines
as explained in mgcv::gamm
. A nice tutorial on this
topic can be found in Pedersen et al. (2019). The answers provided in this
Stan discourse post
may also be helpful.
Pedersen, E. J., Miller, D. L., Simpson, G. L., & Ross, N. (2019). Hierarchical generalized additive models in ecology: an introduction with mgcv. PeerJ.
if (FALSE) {
# simulate some data
dat <- mgcv::gamSim(1, n = 200, scale = 2)
# fit univariate smooths for all predictors
fit1 <- brm(y ~ s(x0) + s(x1) + s(x2) + s(x3),
data = dat, chains = 2)
summary(fit1)
plot(conditional_smooths(fit1), ask = FALSE)
# fit a more complicated smooth model
fit2 <- brm(y ~ t2(x0, x1) + s(x2, by = x3),
data = dat, chains = 2)
summary(fit2)
plot(conditional_smooths(fit2), ask = FALSE)
}