Constructs a concatenated collection mapping
bru_mapper_collect(mappers, hidden = FALSE)# S3 method for bru_mapper_collect
ibm_n(mapper, inla_f = FALSE, multi = FALSE, ...)
# S3 method for bru_mapper_collect
ibm_n_output(mapper, input, state = NULL, inla_f = FALSE, multi = FALSE, ...)
# S3 method for bru_mapper_collect
ibm_values(mapper, inla_f = FALSE, multi = FALSE, ...)
# S3 method for bru_mapper_collect
ibm_is_linear(mapper, inla_f = FALSE, multi = FALSE, ...)
# S3 method for bru_mapper_collect
ibm_jacobian(
mapper,
input,
state = NULL,
inla_f = FALSE,
multi = FALSE,
...,
sub_lin = NULL
)
# S3 method for bru_mapper_collect
ibm_eval(
mapper,
input,
state,
inla_f = FALSE,
multi = FALSE,
...,
sub_lin = NULL
)
# S3 method for bru_mapper_collect
ibm_linear(mapper, input, state, inla_f = FALSE, ...)
# S3 method for bru_mapper_collect
ibm_invalid_output(mapper, input, state, inla_f = FALSE, multi = FALSE, ...)
# S3 method for bru_mapper_collect
[(x, i, drop = TRUE)
# S3 method for bru_mapper_collect
ibm_names(mapper)
# S3 method for bru_mapper_collect
ibm_names(mapper) <- value
[
-indexing a bru_mapper_collect
extracts a subset
bru_mapper_collect
object (for drop FALSE
) or an individual sub-mapper
(for drop TRUE
, and i
identifies a single element)
The names()
method for bru_mapper_collect
returns the names from the
sub-mappers list
A list of bru_mapper
objects
logical
, set to TRUE
to flag that the mapper is to be used
as a first level input mapper for INLA::f()
in a model that requires making
only the first mapper visible to INLA::f()
and INLA::inla.stack()
, such
as for "bym2" models, as activated by the inla_f
argument to ibm_n
,
ibm_values
, and ibm_jacobian
. Set to FALSE
to always access the full
mapper, e.g. for rgeneric
models
A mapper S3 object, inheriting from bru_mapper
.
logical; when TRUE
for ibm_n()
and ibm_values()
, the
result must be compatible with the INLA::f(...)
and corresponding
INLA::inla.stack(...)
constructions. For ibm_{eval,jacobian,linear}
,
the input
interpretation may be different.
Implementations do not normally need to do anything different, except
for mappers of the type needed for hidden multicomponent models such
as "bym2", which can be handled by bru_mapper_collect
.
logical;
If TRUE
(or positive), recurse one level into sub-mappers
Arguments passed on to other methods
Data input for the mapper.
A vector of latent state values for the mapping,
of length ibm_n(mapper, inla_f = FALSE)
Internal, optional pre-computed sub-mapper information
object from which to extract element(s)
indices specifying element(s) to extract
logical;
For [.bru_mapper_collect
, whether to extract an individual mapper when
i
identifies a single element. If FALSE
, a list of sub-mappers is
returned (suitable e.g. for creating a new bru_mapper_collect
object).
Default: TRUE
a character vector of the same length as the number of sub-mappers in the mapper
ibm_jacobian
for bru_mapper_collect
accepts a list with
named entries, or a list with unnamed but ordered elements.
The names must match the sub-mappers, see ibm_names.bru_mapper_collect()
.
Each list element should take a format accepted by the corresponding
sub-mapper. In case each element is a vector, the input can be given as a
data.frame with named columns, a matrix with named columns, or a matrix
with unnamed but ordered columns. When inla_f=TRUE
and hidden=TRUE
in
the mapper definition, the input format should instead match that of
the first, non-hidden, sub-mapper.
ibm_invalid_output
for bru_mapper_collect
accepts a list with
named entries, or a list with unnamed but ordered elements.
The names must match the sub-mappers, see ibm_names.bru_mapper_collect()
.
Each list element should take a format accepted by the corresponding
sub-mapper. In case each element is a vector, the input can be given as a
data.frame with named columns, a matrix with named columns, or a matrix
with unnamed but ordered columns.
bru_mapper, bru_mapper_generics
Other mappers:
bru_get_mapper()
,
bru_mapper()
,
bru_mapper.fm_mesh_1d()
,
bru_mapper.fm_mesh_2d()
,
bru_mapper_aggregate()
,
bru_mapper_const()
,
bru_mapper_factor()
,
bru_mapper_generics
,
bru_mapper_harmonics()
,
bru_mapper_index()
,
bru_mapper_linear()
,
bru_mapper_logsumexp()
,
bru_mapper_marginal()
,
bru_mapper_matrix()
,
bru_mapper_mesh_B()
,
bru_mapper_multi()
,
bru_mapper_pipe()
,
bru_mapper_scale()
,
bru_mapper_shift()
,
bru_mapper_taylor()
(m <- bru_mapper_collect(list(
a = bru_mapper_index(2),
b = bru_mapper_index(3)
), hidden = FALSE))
ibm_eval2(m, list(a = c(1, 2), b = c(1, 3, 2)), 1:5)
Run the code above in your browser using DataLab