runireg {bayesm} R Documentation

## IID Sampler for Univariate Regression

### Description

`runireg` implements an iid sampler to draw from the posterior of a univariate regression with a conjugate prior.

### Usage

`runireg(Data, Prior, Mcmc)`

### Arguments

 `Data ` list(y, X) `Prior` list(betabar, A, nu, ssq) `Mcmc ` list(R, keep, nprint)

### Details

#### Model and Priors

y = Xβ + e with e ~ N(0, σ^2)

β ~ N(betabar, σ^2*A^{-1})
σ^2 ~ (nu*ssq)/χ^2_{nu}

#### Argument Details

`Data = list(y, X)`

 `y: ` n x 1 vector of observations `X: ` n x k design matrix

`Prior = list(betabar, A, nu, ssq)` [optional]

 `betabar: ` k x 1 prior mean (def: 0) `A: ` k x k prior precision matrix (def: 0.01*I) `nu: ` d.f. parameter for Inverted Chi-square prior (def: 3) `ssq: ` scale parameter for Inverted Chi-square prior (def: `var(y)`)

`Mcmc = list(R, keep, nprint)` [only `R` required]

 `R: ` number of draws `keep: ` thinning parameter -- keep every `keep`th draw (def: 1) `nprint: ` print the estimated time remaining for every `nprint`'th draw (def: 100, set to 0 for no print)

### Value

A list containing:

 `betadraw ` R x k matrix of betadraws `sigmasqdraw ` R x 1 vector of sigma-sq draws

### Author(s)

Peter Rossi, Anderson School, UCLA, perossichi@gmail.com.

### References

For further discussion, see Chapter 2, Bayesian Statistics and Marketing by Rossi, Allenby, and McCulloch.
http://www.perossi.org/home/bsm-1

`runiregGibbs`

### Examples

```if(nchar(Sys.getenv("LONG_TEST")) != 0) {R=2000} else {R=10}
set.seed(66)

n = 200
X = cbind(rep(1,n), runif(n))
beta = c(1,2)
sigsq = 0.25
y = X%*%beta + rnorm(n,sd=sqrt(sigsq))

out = runireg(Data=list(y=y,X=X), Mcmc=list(R=R))

cat("Summary of beta and Sigmasq draws", fill=TRUE)