{BayesLCA}R Documentation

Posterior Standard Deviation Estimates for Bayesian Latent Class Analysis via an EM Algorithm


Returns posterior standard deviation estimates for point estimates returned by blca.em. These are obtained via asymptotic estmation of the Observed Information matrix. The Hessian of the log-posterior is also checked to determine whether point estimates occur at at least a local maximum.

Usage, x, counts.n = 1)



An object of class "blca.em".


A binary matrix. An object of class data.blca may also be supplied. In this case the argument counts.n is ignored.


A vector which supplies the corresponding number of times each pattern in X occurs in the data.


This function is primarily intended for use in conjunction with blca.em, and may be called directly by that function by setting se=TRUE. However it can in fact be used with any blca object.


A list containing:


Posterior standard deviation estimates of the item probabilities.


Posterior standard deviation estimates of the class probabilities.


An integer value denoting whether point estimates occur at at least a local maximum. 1 denotes acceptable convergence, 2 denotes that it converged at a saddle point, 3 that the algorithm ended before it converged and 4 denotes that at least one parameter value converged at a boundary value.


The posterior standard deviation estimates are derived asymptotically, i.e., by inverting the information matrix of the parameters. These values are known to be unreliable in cases where parameters estimates are close to 1 or 0, so caution is advised when checking their values. Bootstrapping methods may provide better estimates.

Computationally, the method becomes becomes unstable for values close to 1 or 0. If the distance of any of the supplied parameter values from 0 or 1 is <1e-5, then posterior standard deviation estimates for these values are returned as 0.

Earlier versions of this function erroneously referred to posterior standard deviations as standard errors. This also extended to the function name, which has now been corrected to (for standard deviation). For backwards compatability reasons, the earlier function has been retained as an in internal function.


Arthur White

See Also

blca.em, blca.boot


type1 <- c(0.8, 0.8, 0.2, 0.2)
type2 <- c(0.2, 0.2, 0.8, 0.8)
x<- rlca(1000, rbind(type1,type2), c(0.6,0.4))
dat<- data.blca(x)

fit1 <- blca.em(dat, 2, se=TRUE)

fit2<- blca.em(dat, 2, se=FALSE)<-, dat)$itemprob$classprob

[Package BayesLCA version 1.9 Index]