Learn R Programming

fabMix (version 5.1)

update_z_b: Gibbs sampling for \(z\)

Description

Gibbs sampling for \(z\): here the full conditional distribution is being used (that is, the distribution is also conditioned on the values of factors \(y\)).

Usage

update_z_b(w, mu, Lambda, y, SigmaINV, K, x_data)

Value

Allocation vector

Arguments

w

vector with length \(K\) consisting of mixture weights

mu

\(K\times p\) array containing the marginal means

Lambda

\(K\times p\) array with factor loadings

y

\(n\times q\) Matrix of factors

SigmaINV

Precision matrix

K

Number of components

x_data

Data

Author

Panagiotis Papastamoulis

Examples

Run this code
library('fabMix')
# simulate some data
n = 8                # sample size
p = 5                # number of variables
q = 2                # number of factors
K = 2                # true number of clusters
sINV_diag = 1/((1:p))    # diagonal of inverse variance of errors
set.seed(100)
syntheticDataset <- simData(sameLambda=TRUE,K.true = K, n = n, q = q, p = p, 
                        sINV_values = sINV_diag)

# use the real values as input and simulate allocations
update_z_b(w = syntheticDataset$weights, mu = syntheticDataset$means, 
	Lambda = syntheticDataset$factorLoadings, 
	y = syntheticDataset$factors,
	SigmaINV = diag(1/diag(syntheticDataset$variance)), 
	K = K, x_data = syntheticDataset$data)$z

Run the code above in your browser using DataLab