inla.group group or cluster covariates so to reduce the number of unique values

inla.group(x, n = 25, method = c("cut", "quantile"), idx.only = FALSE)

Arguments

x

The vector of covariates to group.

n

Number of classes or bins to group into.

method

Group either using bins with equal length intervals (method = "cut"), or equal distance in the `probability' scale using the quantiles (method = "quantile").

idx.only

Option to return the index only and not the method.

Value

inla.group return the new grouped covariates where the classes are set to the median of all the covariates belonging to that group.

Author

Havard Rue hrue@r-inla.org

See also

Examples

## this gives groups 3 and 8
x = 1:10
x.group = inla.group(x, n = 2)

## this is the intended use, to reduce the number of unique values in
## the of first argument of f()
n = 100
x = rnorm(n)
y = x + rnorm(n)
result = inla(y ~ f(inla.group(x, n = 20), model = "iid"), data=data.frame(y=y,x=x))
#> Warning: error in running command
#> Error in inla.inlaprogram.has.crashed(): The inla-program exited with an error. Unless you interupted it yourself, please rerun with verbose=TRUE and check the output carefully.
#>   If this does not help, please contact the developers at <help@r-inla.org>.