# sim.cred.band: Constructs a simultaneous credible band In credsubs: Credible Subsets

## Description

`sim.cred.band` returns a simultaneous band over a finite set of covariate points given either a sample from the posterior of the regression surface or a function `FUN(x, params)` and a sample from the posterior of the parameters.

## Usage

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13``` ```sim.cred.band( params, design = NULL, FUN = function(x, params) { params %*% t(x) }, cred.level = 0.95, method = c("asymptotic", "quantile"), sides = c("both", "upper", "lower"), est.FUN = mean, var.FUN = sd, point.estimate = NULL, track = numeric(0), verbose = FALSE ) ```

## Arguments

 `params` A numeric matrix whose rows are draws from the posterior distribution of either the regression surface or the parameter vector. `design` (Optional) A numeric matrix whose rows are covariate points over which the band is to be constructed. `FUN` (Optional) a function of the form `function(x, params)` that takes a row of `design` and the entire `params` matrix and returns a vector of the same length of `x` representing the regression surface. `cred.level` Numeric; the credible level. `method` Either "asymptotic" (default) or "quantile"; see details. `sides` One of "both" (default), "upper", or "lower". Which bounds should be constructed? `est.FUN` The function used to produce estimates of the regression surface. Default is `mean`. `var.FUN` The function used to quantify the variability of the regression surface posterior. Default is `sd`. `point.estimate` If not null, replaces the mean and sets the reference around which the standard error is computed. Useful for bootstrapping methods. Treated as a row of the `params` matrix. `track` A numeric vector of indices indicating which rows (default none) of the design matrix should have the sample of the corresponding `FUN(x, params)` returned. `verbose` Logical (default `FALSE`); print progress?

## Details

If `design` is `NULL` (default), it is taken to be the identity matrix of dimension `ncol(params)`, so that the rows of params are treated as draws from the posterior `FUN(x, params)`.

The 'asymptotic' method assumes that the marginal posteriors of the `FUN(x, params)` are asymptotically normal and is usually significantly faster and less memory-intensive than the 'quantile' method, which makes no such assumption.

## Value

An object of class `sim.cred.band`, which contains:

`upper`

A numeric vector of upper bounds.

`lower`

A numeric vector of lower bounds.

`cred.level`

As provided.

`method`

As provided.

`sides`

As provided.

`est`

Posterior estimate of the regression surface.

`est.FUN`

As provided.

`var`

Summary of posterior variability of the regression surface.

`var.FUN`

As provided.

`W`

An estimate of the extremal errors.

`W.crit`

The critical quantile of W.

`trace`

The posterior samples of the regression surface indicated by the `track` argument.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13``` ```### Sample from regression surface posterior reg.surf.sample <- matrix(rnorm(1000, mean=1:10), ncol=2, byrow=TRUE) sim.cred.band(reg.surf.sample, cred.level=0.80) ### Parametric case design <- cbind(1, 1:10) params <- matrix(rnorm(200, mean=1:2), ncol=2, byrow=TRUE) sim.cred.band(params, design) ### With custom function params.sd <- cbind(1 / rgamma(100, 1), params) FUN.sd <- function(x, params) { params[, -1] %*% t(x) / params[, 1] } sim.cred.band(params.sd, design, FUN.sd) ```

credsubs documentation built on Sept. 1, 2020, 5:07 p.m.