View source: R/IRTLikelihood.cfa.R
IRTLikelihood.cfa | R Documentation |
This function computes the individual likelihood evaluated
at a theta
grid for confirmatory factor analysis
under the normality assumption of residuals. Either
the item parameters (item loadings L
, item
intercepts nu
and residual covariances psi
)
or a fitted cfa
object from the lavaan
package can be provided. The individual likelihood
can be used for drawing plausible values.
IRTLikelihood.cfa(data, cfaobj=NULL, theta=NULL, L=NULL, nu=NULL,
psi=NULL, snodes=NULL, snodes.adj=2, version=1)
data |
Dataset with item responses |
cfaobj |
Fitted |
theta |
Optional matrix containing the |
L |
Matrix of item loadings (if |
nu |
Vector of item intercepts (if |
psi |
Matrix with residual covariances
(if |
snodes |
Number of |
snodes.adj |
Adjustment factor for quasi monte carlo nodes for more than two latent variables. |
version |
Function version. |
Individual likelihood evaluated at theta
CDM::IRT.likelihood
## Not run:
#############################################################################
# EXAMPLE 1: Two-dimensional CFA data.Students
#############################################################################
library(lavaan)
library(CDM)
data(data.Students, package="CDM")
dat <- data.Students
dat2 <- dat[, c(paste0("mj",1:4), paste0("sc",1:4)) ]
# lavaan model with DO operator
lavmodel <- "
DO(1,4,1)
mj=~ mj%
sc=~ sc%
DOEND
mj ~~ sc
mj ~~ 1*mj
sc ~~ 1*sc
"
lavmodel <- TAM::lavaanify.IRT( lavmodel, data=dat2 )$lavaan.syntax
cat(lavmodel)
mod4 <- lavaan::cfa( lavmodel, data=dat2, std.lv=TRUE )
summary(mod4, standardized=TRUE, rsquare=TRUE )
# extract item parameters
res4 <- TAM::cfa.extract.itempars( mod4 )
# create theta grid
theta0 <- seq( -6, 6, len=15)
theta <- expand.grid( theta0, theta0 )
L <- res4$L
nu <- res4$nu
psi <- res4$psi
data <- dat2
# evaluate likelihood using item parameters
like2 <- TAM::IRTLikelihood.cfa( data=dat2, theta=theta, L=L, nu=nu, psi=psi )
# The likelihood can also be obtained by direct evaluation
# of the fitted cfa object "mod4"
like4 <- TAM::IRTLikelihood.cfa( data=dat2, cfaobj=mod4 )
attr( like4, "theta")
# the theta grid is automatically created if theta is not
# supplied as an argument
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.