conv2Bc {lazy.irt}R Documentation

Conversion to Two Parameter Logistic Model with fixed c Parameter

Description

Conversion to 2PLM with fixed c parameter using Weighted Least Squares
Japanese help file: (conv2Bc_JPH)

Usage

conv2Bc(
  param,
  theta = NULL,
  init = 1,
  paramBc = NULL,
  cval = 0.2,
  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
"B3","Bn3"

theta

Vector of theta points

init

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

paramBc

initial parameter data frame. This has priority over init.

cval

fixed c parameter value.

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 2PLMc item parameters 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_GRM(theta|PARAM)) )^2 )
with respect to the GRM item parameters, PARAM,
where icrf(theta) is the icrf of input items,
icrf_GRM(theta|PARAM) is the icrf of fitted GRM 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_GRM(theta|PARAM)) )^2 )
with respect to the GRM item parameters, PARAM,
where info_ic(theta) is the item category information function of input items and
info_ic_GRM(theta|PARAM) is the item category information function of the fitted GRM items.

If method = 3, this function minimizes
sum( w*( info_i(theta) - info_i_GRM(theta|PARAM) )^2 )
with respect to the GRM item parameters, PARAM,
where info_i(theta) is the item information function of input items and
info_i_GRM(theta|PARAM) is the item information function of fitted GRM 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 2PLMc item parameter data frame paramP: Input 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 3PNM items to 2PLMc items
res1 <- conv2Bc( paramA1[c(2,4),], maxiter=20, plot=1, method=1, cval=0.25 )
res2 <- conv2Bc( paramA1[c(2,4),], maxiter=20, plot=1, method=2, cval=0.25 )

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 ]