Skip to contents

Create a factor mapper

Usage

bru_mapper_factor(values, factor_mapping, indexed = FALSE)

# S3 method for bru_mapper_factor
ibm_n(mapper, ...)

# S3 method for bru_mapper_factor
ibm_values(mapper, ...)

# S3 method for bru_mapper_factor
ibm_jacobian(mapper, input, ...)

Arguments

values

Input values calculated by input_eval.bru_input()

factor_mapping

character; selects the type of factor mapping.

  • 'contrast' for leaving out the first factor level.

  • 'full' for keeping all levels.

indexed

logical; if TRUE, the ibm_values() method will return an integer vector instead of the factor levels. This is needed e.g. for group and replicate mappers, since INLA::f() doesn't accept factor values. Default: FALSE, which works for the main input mappers. The default mapper constructions will set it the required setting.

mapper

A mapper S3 object, inheriting from bru_mapper.

...

Arguments passed on to other methods

input

Data input for the mapper.

Examples

m <- bru_mapper_factor(factor(c("a", "b")), "full")
ibm_eval2(m, input = c("b", "a", "a", "b"), state = c(1, 3))
#> $offset
#> [1] 3 1 1 3
#> 
#> $jacobian
#> 4 x 2 sparse Matrix of class "dgCMatrix"
#>         
#> [1,] . 1
#> [2,] 1 .
#> [3,] 1 .
#> [4,] . 1
#> 

m <- bru_mapper_factor(factor(c("a", "b")), "contrast")
ibm_eval2(m, input = factor(c("b", "a", "a", "b")), state = 2)
#> $offset
#> [1] 2 0 0 2
#> 
#> $jacobian
#> 4 x 1 sparse Matrix of class "dgCMatrix"
#>       
#> [1,] 1
#> [2,] .
#> [3,] .
#> [4,] 1
#>