# credsubs: Constructs a credible subset pair In credsubs: Credible Subsets

## Description

`credsubs` returns a credible subset pair 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 14 15``` ```credsubs( params, design = NULL, FUN = function(x, params) { params %*% t(x) }, cred.level = 0.95, threshold = 0, method = c("asymptotic", "quantile"), step.down = TRUE, sides = c("both", "exclusive", "inclusive"), 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. `threshold` Numeric; the value of `FUN` above which a covariate is included in the target subset. `method` Either "asymptotic" (default) or "quantile"; see details. `step.down` Logical (default `TRUE`); should the step-down procedure be used? `sides` One of "both" (default), "exclusive", or "inclusive". 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 `credsubs`, which contains:

`exclusive`

A logical vector indicating membership in the exclusive credible subset.

`inclusive`

A logical vector indicating membership in the inclusive credible subset.

`cred.level`

As provided.

`threshold`

As provided.

`method`

As provided.

`step.down`

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) credsubs(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) credsubs(params, design) ### With custom function params.sd <- cbind(1 / rgamma(100, 1), params) FUN.sd <- function(x, params) { params[, -1] %*% t(x) / params[, 1] } credsubs(params.sd, design, FUN.sd, threshold=1) ```

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