personfit: Latent traits estimation

Description Usage Arguments Value Methods to estimate the Latent Traits Notation Examples

Description

Estimates the latent traits by using either the Expected A Posteriori (EAP) or Mode A Posteriori (MAP) method. A Normal distribution with mean vector zero and covariance matrix the identity is assumed. Quasi-Monte Carlo quadrature is suggested when the data dimension is large (>3).

Usage

1
2
3
personfit(data, dim, model = "2PL", zetas, quad_tech = "Gaussian",
  quad_points = NULL, init_traits = NULL, method = "MAP",
  by_individuals = TRUE, verbose = FALSE)

Arguments

data

The matrix containing the answers of tested individuals

dim

The dimensionality of the test

model

"1PL", "2PL" or "3PL"

zetas

The item parameters. A matrix of dim (num of items * num of parameters from item that has the greater number of categories) where each row is a vector of the form:

(\boldsymbol{a}_i,γ_{i1},γ_{i2},...,γ_{im_i}, NA,NA,...,NA,c_i) according to the notation in the section "Notation". The function "LatentREGpp::itemfit( )" returns the zetas with this structure.

quad_tech

A string with technique. "Gaussian" for Gaussian quadrature or "QMCEM" for Quasi-Monte Carlo quadrature

quad_points

Amount of quadrature points by dimention. Default NULL

init_traits

Initial values by pattern or by individual as the case may be. Default NULL.

method

"EAP" or "MAP". "MAP" by default.

by_individuals

if True, return latent trait by individual, otherwsie by response pattern. True by default.

verbose

True for get information about estimation process in runtime. False in otherwise.

Value

depends on value of by_individuals argument.

If by_individuals=TRUE. Returns a matrix with latent trait for each individual

If by_individuals=FALE. Returns a list of length 3 with the latent traits for each pattern, the reponse patterns and the frecuencie of each pattern

Methods to estimate the Latent Traits

EAP

In general the EAP Method is based on the next expression.

\frac{\int θ_lp(U_{l}=u_l /θ_l,ζ) p(θ_l/η)\partialθ_l}{\int p(U_{l}=u_l /θ_l,ζ) p(θ_l/η)\partialθ_l}

where:

θ_l is the latent trait associated with pattern l.

U_l refers to response pattern l

ζ are items parameters

η are the hiperparameters from the prior distribution to the traits.

MAP

The method consists of maximize the following expression regard to θ_l

\frac{p(U_{l}=u_l /θ_l,ζ)p(θ_l/η)} {\int p(U_{l}=u_l /θ_l,ζ) p(θ_l/η)\partialθ_l}

Notation

In the Polytomous Multidimensional case, the probability that an examinee with latent trait vector θ_l responses categorie k to item i is,

P(U_{li}=k \mid \boldsymbol{θ}_l, \boldsymbol{a}_i,γ_{ik}) =c_i+(1-c_i)\boldsymbol{Ψ}(η_{lik})

where

η_{lik}=\boldsymbol{a}_i^t\boldsymbol{θ}_l + γ_{ik}

\boldsymbol{a}_i=(\boldsymbol{a}_1,\boldsymbol{a}_2,...,\boldsymbol{a}_d)^t is a parameter associated with discrimination of item, d is the data dimention

\boldsymbol{θ}_l=(\boldsymbol{θ}_{l1},\boldsymbol{θ}_{l2},...,\boldsymbol{θ}_{ld})^t

is the latent trait multidimensional associated with pattern l.

γ_{ik} is a parameter associated with item and the categorie, i=1,2,..,p (number of items) k=1,2...,m_i (number of categories from item)

c_i is the guessing parameter, make sense in the dichotomous case.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
## Not run: 
#Example 1

#simulate 10 polyotmous items, the first 5 with 4 response categories and the
#others with 5 response categories, By default the number of individuals is 1000
#, model is "2PL" and the dimention is 1
dats=simulate_polytomous(ncatgs = c(rep(4,10),rep(5,10)),seed_data = 5000L)
#estimate the items parameters
est=itemfit(dats$data,dim = 1,model = "2PL")
#calculates the latent traits estimation.
personfit(dats$data,dim = 1,zetas = est$zetas,method = "MAP")

#Example 2

#simulate 10 dichotomous items, the trait dimention is 2
#other arguments by default
dats=simulate_dichotomous(dim.data = 2,size.cluster = c(5,5), seed_data = 5000L)
#estimate the items parameters
est=itemfit(dats$data,dim = 2,clusters = c(5,5),model = "2PL")
#calculates the latent traits estimation
personfit(dats$data,dim = 2,zetas = est$zetas,method = "MAP",by_individuals=F)

## End(Not run)

LatentREGpp documentation built on April 14, 2017, 11:55 a.m.