conv2P {lazy.irt}R Documentation

Conversion to Generalized Partial Credit Model

Description

Conversion to Generalized Partial Credit Model using Weighted Least Squares
Japanese help file: (conv2P_JPH)

Usage

conv2P(
  param,
  theta = NULL,
  init = 1,
  paramP = NULL,
  method = 1,
  wtype = 1,
  wmean = 0,
  wsd = 1,
  DinP = 1,
  npoints = 21,
  thmin = -3,
  thmax = 3,
  printGN = 0,
  maxiter = 500,
  eps = 1e-06,
  epsg = 1e-06,
  epsx = 1e-09,
  print = 1,
  plot = 0
)

Arguments

param

Item Parameter Data Frame with item types:
"Bn","B3","Bn3","G","Gn"

theta

Vector of theta points

init

= 1 to use fitP2G, else use equally spaced b-parameters

paramP

initial parameter data frame. This has priority over init.

method

= 1 to use item category response function (icrf) to calculate rmse (default)
= 2 to use item category information function (icif) to calculate rmse
= 3 to use item response function (irf) to calculate rmse (not yet available),
= 4 to use item information function (iif) to calculate rmse, (not yet available),

wtype

= 0 not to use dnorm(theta) as the weight

wmean

The mean of normal distribution to be used as the weight

wsd

The sd of normal distribution to be used as the weight

DinP

= 1 to include D=1.7 in logistic function

npoints

# of discrete points for theta

thmin

Minimum value of discrete theta value

thmax

Maximum value of discrete theta value

printGN

print level for lazy.mat::GN function

maxiter

Maximum # of GN iterations

eps

Convergence criterion for the relative improvement of rmse

epsg

Convergence crit for the maximum absolute value of the gradient

epsx

Convergence crit for the maximum absolute change of the parameter value

print

>= 1 to print result

plot

>= 1 to plot result

Details

This function finds the set of GPCM item paramters which best fit the given icrfs or item info functions of the items in the input parameter data frame.

If method = 1, this function minimizes
sum( w*( vec(icrf(theta)) - vec(icrf_GPCM(theta|PARAM)) )^2 )
with respect to the GPCM item parameters, PARAM,
where icrf(theta) is the icrf of the input items,
icrf_GPCM(theta|PARAM) is the icrf of the fitted GPCM items,
and w is the weight vector ( N(wmean,wsd^2) or 1 ).

If method = 2, this function minimizes
sum( w*( vec(info_ic(theta)) - vec(info_ic_GPCM(theta|PARAM)) )^2 )
with respect to the GPCM item parameters, PARAM,
where info_ic(theta) is the item category information function of input items and
info_ic_GPCM(theta|PARAM) is the item category information function of the fitted GPCM items.

If method = 3, this function minimizes
sum( w*( info_i(theta) - info_i_GPCM(theta|PARAM) )^2 )
with respect to the GPCM item parameters, PARAM,
where info_i(theta) is the item information function of input items and
info_i_GPCM(theta|PARAM) is the item information function of the fitted GPCM items.


When three parameter binary items are included, 2PLM will be fitted.
Weighted Gauss-Newton method (lazy.mat::GN) is used for the minimization with the numerical Jacobian matrix calculated by lazy.mat::JacobianMat.

Value

A list of:
paramNew: Fitted GPCM item parameter data frame
2PLM or 2PNM items remain unchaged.
paramG: Input GRM item parameter data frame
grad: Gradient matrix
wtype, wmean, wsd, method, init
rmse_p: rmse in terms of icrf (minimized with method=1)
rmse_irf: rmse in terms of irf
rmse_ii: rmse in terms of item information
rmse_iic: rmse in terms of item category information (minimized with method=2)
icrfNew, icifNew, iifNew, irfNew
icrfOld, icifOld, iifOld, irfOld

Examples

# convert 3PLM and GRM to GPCM items
param <- paramA1[c(2,6,9),]
theta <- seq(-4,4,length=51)
# maxiter for method=2 is too small.
res1 <- conv2P( param, theta, maxiter=20, plot=1, wtype=1, method=1 )
res2 <- conv2P( param, theta, maxiter=2, plot=1, wtype=1, method=2 )

Print(res1$rmse_p, res1$rmse_iic, res1$rmse_ii)
Print(res2$rmse_p, res2$rmse_iic, res2$rmse_ii)



[Package lazy.irt version 0.1.6 ]