Simulate data from polytomous logit-normit (graded logistic) model

Share:

Description

Simulate data from polytomous logit-normit (graded logistic) model

Usage

1
simulpln(n,nitem,ncat,alphas,betas)

Arguments

n

Number of responses to generate.

nitem

Number of items.

ncat

Number of categories for the items.

alphas

A vector of length nitemX(ncat-1) corresponding to true values for the (decreasing) cutpoints for the items.

betas

A vector of length nitem corresponding to values for the beta vectors of slopes.

Details

Data from graded logistic models is generated under the following parameterization:

Pr(y_i = k_i| η) = { 1-Ψ (α_i,k + β_i*η) if k_i = 0, Ψ (α_i,k + β_i*η) - Ψ (α_i,k+1 + β_i*η) if 0 < k_i < m-1, Ψ (α_i,k+1 + β_i*η) if k_i = m-1}.

Where the items are y_i, i = 1, …, n, and response categories are k=0, …, m-1. η is the latent trait, Ψ is the logistic distribution function, α is an intercept (cutpoint) parameter, and β is a slope parameter. When the number of categories for the items is 2, this reduceds to the 2PL parameterization:

Pr(y_i = 1| η) = Ψ (α_1 + β_i η)

Value

A data matrix in which each row represents a response pattern and the final column represents the frequency of each response pattern.

Author(s)

Carl F. Falk cffalk@gmail.com, Harry Joe

See Also

nrmlepln nrmlerasch nrbcpln

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
n<-500;
ncat<-3;
nitem<-5
alphas=c(0,-.5,  .2,-1,  .4,-.6,  .3,-.2,  .5,-.5)
betas=c(1,1,1,.5,.5)

set.seed(1234567)
datfr<-simulpln(n,nitem,ncat,alphas,betas)
nrmleplnout<-nrmlepln(datfr, ncat=ncat, nitem=nitem)
nrmleplnout