| bru | R Documentation |
This method is a wrapper for INLA::inla and provides
multiple enhancements.
Easy usage of spatial covariates and automatic construction of inla
projection matrices for (spatial) SPDE models. This feature is
accessible via the components parameter. Practical examples on how to
use spatial data by means of the components parameter can also be found
by looking at the lgcp() function's documentation.
Constructing multiple observation models is straightforward. See
bru_obs() for more information on how to provide additional
models to bru using the ... parameter list.
Support for non-linear predictors. See example below.
Log Gaussian Cox process (LGCP) inference is
available by using the "cp" family or (even easier) by using the
lgcp() function.
bru(components = ~Intercept(1), ..., options = list(), .envir = parent.frame())
bru_rerun(result, options = list())
## S3 method for class 'bru'
summary(object, verbose = FALSE, ...)
## S3 method for class 'summary_bru'
print(x, ...)
## S3 method for class 'bru'
print(x, ...)
components |
Latent component definitions, either as a |
... |
Observation models, each constructed by a calling Alternatively, for backwards compatibility, may be named parameters that
can be passed to a single |
options |
A bru_options options object or a list of options passed
on to |
.envir |
Environment for component evaluation (for when a non-formula specification is used) |
result |
A previous estimation object of class |
object |
An object obtained from a |
verbose |
logical; If |
x |
An object to be printed |
bru returns an object of class "bru". A bru object inherits
from INLA::inla (see the inla documentation for its properties) and
adds additional information stored in the bru_info field.
summary(bru): Takes a fitted bru object produced by bru() or lgcp()
and creates various summaries from it, including the summary output from
the corresponding INLA::sumary() method.
The ... arguments are passed on to component summary functions, see
summary.bru_comp().
print(bru): Print a summary of a bru object.
bru_rerun(): Continue the optimisation from a previously computed estimate. The estimation
options list can be given new values to override the original settings.
To rerun with a subset of the data (e.g. for cross validation or prior
sampling), use bru_set_missing() to set all or part of the response data
to NA before calling bru_rerun().
Fabian E. Bachl bachlfab@gmail.com
if (bru_safe_inla()) {
# Simulate some covariates x and observations y
input.df <- data.frame(x = cos(1:10))
input.df <- within(input.df, {
y <- 5 + 2 * x + rnorm(10, mean = 0, sd = 0.1)
})
# Fit a Gaussian likelihood model
fit <- bru(y ~ x + Intercept(1), family = "gaussian", data = input.df)
# Obtain summary
fit$summary.fixed
}
if (bru_safe_inla()) {
# Alternatively, we can use the bru_obs() function to construct the
# likelihood:
lik <- bru_obs(
family = "gaussian",
formula = y ~ x + Intercept,
data = input.df
)
fit <- bru(~ x + Intercept(1), lik)
fit$summary.fixed
}
# An important addition to the INLA methodology is bru's ability to use
# non-linear predictors. Such a predictor can be formulated via bru_obs()'s
# \code{formula} parameter. The z(1) notation is needed to ensure that
# the z component should be interpreted as single latent variable and not
# a covariate:
if (bru_safe_inla()) {
z <- 2
input.df <- within(input.df, {
y <- 5 + exp(z) * x + rnorm(10, mean = 0, sd = 0.1)
})
lik <- bru_obs(
family = "gaussian", data = input.df,
formula = y ~ exp(z) * x + Intercept
)
fit <- bru(~ z(1) + Intercept(1), lik)
# Check the result (z posterior should be around 2)
fit$summary.fixed
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.