model_gpcm function

Generalized Partial Credit Model

Generalized Partial Credit Model

Routine functions for the GPCM

model_gpcm_prob(t, a, b, d, D = 1.702, insert_d0 = NULL) model_gpcm_info(t, a, b, d, D = 1.702, insert_d0 = NULL) model_gpcm_lh(u, t, a, b, d, D = 1.702, insert_d0 = NULL, log = FALSE) model_gpcm_gendata(n_p, n_i, n_c, t = NULL, a = NULL, b = NULL, d = NULL, D = 1.702, sort_d = FALSE, t_dist = c(0, 1), a_dist = c(-0.1, 0.2), b_dist = c(0, 0.8), missing = NULL) model_gpcm_rescale(t, a, b, d, param = c("t", "b"), mean = 0, sd = 1) model_gpcm_plot(a, b, d, D = 1.702, insert_d0 = NULL, type = c("prob", "info"), by_item = FALSE, total = FALSE, xaxis = seq(-6, 6, 0.1)) model_gpcm_plot_loglh(u, a, b, d, D = 1.702, insert_d0 = NULL, xaxis = seq(-6, 6, 0.1), show_mle = FALSE)

Arguments

  • t: ability parameters, 1d vector
  • a: discrimination parameters, 1d vector
  • b: item location parameters, 1d vector
  • d: item category parameters, 2d vector
  • D: the scaling constant, 1.702 by default
  • insert_d0: insert an initial category value
  • u: the observed scores (starting from 0), 2d matrix
  • log: TRUE to return log-likelihood
  • n_p: the number of people to be generated
  • n_i: the number of items to be generated
  • n_c: the number of score categories
  • sort_d: TRUE to sort d parameters for each item
  • t_dist: parameters of the normal distribution used to generate t-parameters
  • a_dist: parameters of the lognormal distribution parameters of a-parameters
  • b_dist: parameters of the normal distribution used to generate b-parameters
  • missing: the proportion or number of missing responses
  • param: the parameter of the new scale: 't' or 'b'
  • mean: the mean of the new scale
  • sd: the standard deviation of the new scale
  • type: the type of plot, prob for ICC and info for IIFC
  • by_item: TRUE to combine categories
  • total: TRUE to sum values over items
  • xaxis: the values of x-axis
  • show_mle: TRUE to print maximum likelihood values

Details

Use NA to represent unused category.

Examples

with(model_gpcm_gendata(10, 5, 3), model_gpcm_prob(t, a, b, d)) with(model_gpcm_gendata(10, 5, 3), model_gpcm_info(t, a, b, d)) with(model_gpcm_gendata(10, 5, 3), model_gpcm_lh(u, t, a, b, d)) model_gpcm_gendata(10, 5, 3) model_gpcm_gendata(10, 5, 3, missing=.1) # Figure 1 in Muraki, 1992 (APM) b <- matrix(c(-2,0,2,-.5,0,2,-.5,0,2), nrow=3, byrow=TRUE) model_gpcm_plot(a=c(1,1,.7), b=rowMeans(b), d=rowMeans(b)-b, D=1.0, insert_d0=0) # Figure 2 in Muraki, 1992 (APM) b <- matrix(c(.5,0,NA,0,0,0), nrow=2, byrow=TRUE) model_gpcm_plot(a=.7, b=rowMeans(b, na.rm=TRUE), d=rowMeans(b, na.rm=TRUE)-b, D=1.0, insert_d0=0) # Figure 3 in Muraki, 1992 (APM) b <- matrix(c(1.759,-1.643,3.970,-2.764), nrow=2, byrow=TRUE) model_gpcm_plot(a=c(.778,.946), b=rowMeans(b), d=rowMeans(b)-b, D=1.0, insert_d0=0) # Figure 1 in Muraki, 1993 (APM) b <- matrix(c(0,-2,4,0,-2,2,0,-2,0,0,-2,-2,0,-2,-4), nrow=5, byrow=TRUE) model_gpcm_plot(a=1, b=rowMeans(b), d=rowMeans(b)-b, D=1.0) # Figure 2 in Muraki, 1993 (APM) b <- matrix(c(0,-2,4,0,-2,2,0,-2,0,0,-2,-2,0,-2,-4), nrow=5, byrow=TRUE) model_gpcm_plot(a=1, b=rowMeans(b), d=rowMeans(b)-b, D=1.0, type='info', by_item=TRUE) with(model_gpcm_gendata(5, 50, 3), model_gpcm_plot_loglh(u, a, b, d))
  • Maintainer: Xiao Luo
  • License: GPL (>= 3)
  • Last published: 2019-03-22