Learn R Programming

emulator (version 1.2-21)

s.chi: Variance estimator

Description

Returns estimator for a priori \(\sigma^2\)

Usage

s.chi(H, Ainv, d, s0 = 0, fast.but.opaque = TRUE)

Arguments

H

Regression basis function (eg that returned by regressor.multi())

Ainv

\(A^{-1}\) where \(A\) is a correlation matrix (eg that returned by corr.matrix())

d

Vector of data points

s0

Optional offset

fast.but.opaque

Boolean, with default TRUE meaning to use quad.form(), and FALSE meaning to use straightforward %*%. The first form should be faster, but the code is less intelligible than the second form. Comparing the returned value with this argument on or off should indicate the likely accuracy attained.

Author

Robin K. S. Hankin

Details

See O'Hagan's paper (ref below), equation 12 for details and context.

References

A. O'Hagan 1992. “Some Bayesian Numerical Analysis”, pp345-363 of Bayesian Statistics 4 (ed J. M. Bernardo et al), Oxford University Press

Examples

Run this code

# example has 10 observations on 6 dimensions.
# function is just sum( (1:6)*x) where x=c(x_1, ... , x_2)
data(toy)
val <- toy
colnames(val) <- letters[1:6]
H <- regressor.multi(val)
d <- apply(H,1,function(x){sum((0:6)*x)})


# create A matrix and its inverse:
A <- corr.matrix(val,scales=rep(1,ncol(val)))
Ainv <- solve(A)

# add some suitably correlated noise:
d <- as.vector(rmvnorm(n=1, mean=d, 0.1*A))

# now evaluate s.chi():
s.chi(H, Ainv, d)


# assess accuracy:
s.chi(H, Ainv, d, fast=TRUE) - s.chi(H, Ainv, d, fast=FALSE)

Run the code above in your browser using DataLab