j_*() and array_j_*() are C++ functions for calculating the first derivative of the log-likelihood function.

j_1pl(x, b, u)

j_2pl(x, a, b, u)

j_m_2pl(x, a, d, u)

j_3pl(x, a, b, c, u)

j_m_3pl(x, a, d, c, u)

j_pc(x, b, u)

j_gpc(x, a, b, u)

j_m_gpc(x, a, d, u)

j_gr(x, a, b, u)

j_m_gr(x, a, d, u)

array_j_1pl(x, b, u)

array_j_2pl(x, a, b, u)

array_j_3pl(x, a, b, c, u)

array_j_pc(x, b, u)

array_j_gpc(x, a, b, u)

array_j_gr(x, a, b, u)

Arguments

x

the theta value. The number of columns should correspond to the number of dimensions. For array_*() functions, the number of theta values must correspond to the number of rows.

b, d

the difficulty parameter. b is used for unidimensional items, and d is used for multidimensional items.

u

the response value.

a

the a-parameter.

c

the c-parameter.

Details

j_*() functions accept a single theta value, and array_j_*() functions accept multiple theta values.

Supports unidimensional and multidimensional models.

  • j_1pl(), array_j_1pl(): 1PL models

  • j_2pl(), array_j_2pl(): 2PL models

  • j_3pl(), array_j_3pl(): 3PL models

  • j_pc(), array_j_pc(): PC (partial credit) models

  • j_gpc(), array_j_gpc(): GPC (generalized partial credit) models

  • j_gr(), array_j_gr(): GR (graded response) models

  • j_m_2pl(), array_j_m_2pl(): multidimensional 2PL models

  • j_m_3pl(), array_j_m_3pl(): multidimensional 3PL models

  • j_m_gpc(), array_j_m_gpc(): multidimensional GPC models

  • j_m_gr(), array_j_m_gr(): multidimensional GR models

References

Rasch, G. (1960). Probabilistic models for some intelligence and attainment tests. Copenhagen: Danish Institute for Educational Research.

Lord, F. M. (1952). A theory of test scores (Psychometric Monograph No. 7). Richmond, VA: Psychometric Corporation.

Birnbaum, A. (1957). Efficient design and use of tests of mental ability for various decision-making problems (Series Report No. 58-16. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.

Birnbaum, A. (1958). On the estimation of mental ability (Series Report No. 15. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.

Birnbaum, A. (1958). Further considerations of efficiency in tests of a mental ability (Series Report No. 17. Project No. 7755-23). Randolph Air Force Base, TX: USAF School of Aviation Medicine.

Birnbaum, A. (1968). Some latent trait models and their use in inferring an examinee's ability. In Lord, F. M., Novick, M. R. (eds.), Statistical Theories of Mental Test Scores, 397-479. Reading, MA: Addison-Wesley.

Masters, G. N. (1982). A Rasch model for partial credit scoring. Psychometrika, 47(2), 149-174.

Andrich, D. (1978). A rating formulation for ordered response categories. Psychometrika, 43(4), 561-573.

Muraki, E. (1992). A generalized partial credit model: Application of an EM algorithm. Applied Psychological Measurement, 16(2), 159-176.

Samejima, F. (1969). Estimation of latent ability using a response pattern of graded scores. Psychometrika Monograph, 17.

Examples

u <- 1

x <- 0.5
j_1pl(x, 1, u)
#> [1] 0.6224593
j_2pl(x, 1, 2, u)
#> [1] 0.8175745
j_3pl(x, 1, 2, 0.25, u)
#> [1] 0.2891787
j_pc(x, c(0, 1), u)
#> [1] 0
j_gpc(x, 2, c(0, 1), u)
#> [1] 0
j_gr(x, 2, c(0, 2), u)
#> [1] 0.4430311

x <- matrix(seq(-3, 3, 1)) # three theta values, unidimensional
array_j_1pl(x, 1, u)
#>           [,1]
#> [1,] 0.9820138
#> [2,] 0.9525741
#> [3,] 0.8807971
#> [4,] 0.7310586
#> [5,] 0.5000000
#> [6,] 0.2689414
#> [7,] 0.1192029
array_j_2pl(x, 1, 2, u)
#>           [,1]
#> [1,] 0.9933071
#> [2,] 0.9820138
#> [3,] 0.9525741
#> [4,] 0.8807971
#> [5,] 0.7310586
#> [6,] 0.5000000
#> [7,] 0.2689414
array_j_3pl(x, 1, 2, 0.25, u)
#>            [,1]
#> [1,] 0.01955160
#> [2,] 0.05027533
#> [3,] 0.11864890
#> [4,] 0.23201143
#> [5,] 0.32644890
#> [6,] 0.30000000
#> [7,] 0.18471761
array_j_pc(x, c(0, 1), u)
#>            [,1]
#> [1,]  0.9508795
#> [2,]  0.8697008
#> [3,]  0.6702655
#> [4,]  0.2669564
#> [5,] -0.2669564
#> [6,] -0.6702655
#> [7,] -0.8697008
array_j_gpc(x, 2, c(0, 1), u)
#>            [,1]
#> [1,]  1.9950514
#> [2,]  1.9638509
#> [3,]  1.7533994
#> [4,]  0.8098632
#> [5,] -0.8098632
#> [6,] -1.7533994
#> [7,] -1.9638509
array_j_gr(x, 2, c(0, 2), u)
#>               [,1]
#> [1,]  1.994964e+00
#> [2,]  1.963357e+00
#> [3,]  1.756649e+00
#> [4,]  9.640276e-01
#> [5,]  2.186643e-16
#> [6,] -9.640276e-01
#> [7,] -1.756649e+00