| posteriorDiscard.GaussianNIG | R Documentation |
For the model structure:
x \sim Gaussian(X beta,sigma^2)
sigma^2 \sim InvGamma(a,b)
beta \sim Gaussian(m,sigma^2 V)
Where X is a row vector, or a design matrix where each row is an obervation. InvGamma() is the Inverse-Gamma distribution, Gaussian() is the Gaussian distribution. See ?dInvGamma and dGaussian for the definitions of these distribution.
The model structure and prior parameters are stored in a "GaussianNIG" object.
Contrary to posterior(), this function will update (m,V,a,b) by removing the information of observed samples (x,X). The model structure and prior parameters are stored in a "GaussianNIG" object, the prior parameters in this object will be updated after running this function.
## S3 method for class 'GaussianNIG' posteriorDiscard(obj, ss, w = NULL, ...)
obj |
A "GaussianNIG" object. |
ss |
Sufficient statistics of (x,X). In Gaussian-NIG case the sufficient statistic of sample (x,X) is a object of type "ssGaussianLinear", it can be generated by the function sufficientStatistics(). |
w |
Sample weights,default NULL. |
... |
Additional arguments to be passed to other inherited types. |
None. the gamma stored in "obj" will be updated with the information in "ss".
Banerjee, Sudipto. "Bayesian Linear Model: Gory Details." Downloaded from http://www. biostat. umn. edu/~ph7440 (2008).
GaussianNIG,posterior.GaussianNIG
X <- 1:20 x <- rnorm(20)+ X*0.3 ## add information, then remove them obj <- GaussianNIG(gamma=list(m=0,V=1,a=1,b=1)) ss <- sufficientStatistics(obj = obj,X=X,x=x) posterior(obj = obj,ss = ss) obj posteriorDiscard(obj=obj,ss=ss) obj ## or, add information, then remove them one by one obj <- GaussianNIG(gamma=list(m=0,V=1,a=1,b=1)) ssEach <- sufficientStatistics(obj = obj,X=X,x=x,foreach = TRUE) for(sss in ssEach) posterior(obj = obj,ss = sss) obj for(sss in ssEach) posteriorDiscard(obj = obj,ss = sss) obj