Formulae for BAMLSS
This function creates an extended BAMLSS formula
. In combination with a
bamlss.family
object, each parameter of the response distribution is linked
to a single formula. If no formula is supplied for a parameter, a simple intercept only
model is created. Moreover, the function identifies hierarchical structures, see the examples.
This function is useful for creating complex model.frame
s for (hierarchical)
multi-parameter models and is used by function bamlss.frame
.
bamlss.formula(formula, family = NULL, specials = NULL, env = NULL, ...)
formula |
A simple |
family |
A |
specials |
A character vector specifying special functions to be used within
formulae, see |
env |
The environment that should be assigned to the formula. |
... |
Arguments passed to the |
A named list of class "bamlss.formula"
. Each list entry specifies a model, e.g., for
one parameter of a provided bamlss.family
object. Each entry (parameter model) then
holds:
formula |
A simple |
fake.formula |
A formula with all function calls being dropped, e.g., the formula
|
## Simple formula without family object. f <- bamlss.formula(y ~ x1 + s(x2)) print(f) print(str(f)) ## Complex formula with list of formulae. f <- list( y1 ~ x1 + s(x2), y2 ~ x3 + te(lon, lat), u ~ x4 + x1 ) f <- bamlss.formula(f) print(f) print(names(f)) ## Same formula but using extended formulae ## of package Formula. f <- y1|y2|u ~ x1 + s(x2)|x3 + te(lon,lat)|x4 + x1 f <- bamlss.formula(f) print(f) print(names(f)) ## Using a bamlss family object, e.g., gaussian_bamlss(). ## The family has two parameters, mu and sigma, for ## each parameter one formula is returned. If no ## formula is specified an intercept only model is ## generated for the respective parameter. f <- bamlss.formula(y ~ x1 + s(x2), family = gaussian_bamlss) ## Note, same as: f <- bamlss.formula(y ~ x1 + s(x2), family = "gaussian") print(f) ## Specify model for parameter sigma, too f <- list( y ~ x1 + s(x2), sigma ~ x2 + te(lon, lat) ) f <- bamlss.formula(f, family = "gaussian") print(f) ## With complex hierarchical structures, ## each parameter is another list of formulae, ## indicated by the h1,...,hk, names. f <- list( y ~ x1 + s(x2) + id1, sigma ~ x2 + te(lon, lat) + id2, id1 ~ s(x3) + x4 + s(id3), id3 ~ x5 + s(x5, x6), id2 ~ x7 ) f <- bamlss.formula(f, family = "gaussian") print(f)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.