# iteminfo: Function to calculate item information In mirt: Multidimensional Item Response Theory

## Description

Given an internal mirt item object extracted by using `extract.item`, compute the item information.

## Usage

 `1` ```iteminfo(x, Theta, degrees = NULL, total.info = TRUE, multidim_matrix = FALSE) ```

## Arguments

 `x` an extracted internal mirt object containing item information (see `extract.item`) `Theta` a vector (unidimensional) or matrix (multidimensional) of latent trait values `degrees` a vector of angles in degrees that are between 0 and 90. Only applicable when the input object is multidimensional `total.info` logical; return the total information curve for the item? If `FALSE`, information curves for each category are returned as a matrix `multidim_matrix` logical; compute the information matrix for each row in `Theta`? If `Theta` contains more than 1 row then a list of matrices will be returned, otherwise if `Theta` has exactly one row then a matrix will be returned

## Author(s)

Phil Chalmers rphilip.chalmers@gmail.com

## References

Chalmers, R., P. (2012). mirt: A Multidimensional Item Response Theory Package for the R Environment. Journal of Statistical Software, 48(6), 1-29. doi: 10.18637/jss.v048.i06

`extract.item`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43``` ```mod <- mirt(Science, 1) extr.2 <- extract.item(mod, 2) Theta <- matrix(seq(-4,4, by = .1)) info.2 <- iteminfo(extr.2, Theta) #do something with the info? plot(Theta, info.2, type = 'l', main = 'Item information') ## Not run: #category information curves cat.info <- iteminfo(extr.2, Theta, total.info = FALSE) plot(Theta, cat.info[,1], type = 'l', ylim = c(0, max(cat.info)), ylab = 'info', main = 'Category information') for(i in 2:ncol(cat.info)) lines(Theta, cat.info[,i], col = i) ## Customized test information plot T1 <- T2 <- 0 dat <- expand.table(LSAT7) mod1 <- mirt(dat, 1) mod2 <- mirt(dat, 1, 'Rasch') for(i in 1:5){ T1 <- T1 + iteminfo(extract.item(mod1, i), Theta) T2 <- T2 + iteminfo(extract.item(mod2, i), Theta) } plot(Theta, T2/T1, type = 'l', ylab = 'Relative Test Information', las = 1) lines(Theta, T1/T1, col = 'red') # multidimensional mod <- mirt(dat, 2, TOL=1e-2) ii <- extract.item(mod, 1) Theta <- as.matrix(expand.grid(-4:4, -4:4)) iteminfo(ii, Theta, degrees=c(45,45)) # equal angle iteminfo(ii, Theta, degrees=c(90,0)) # first dimension only # information matrices iteminfo(ii, Theta, multidim_matrix = TRUE) iteminfo(ii, Theta[1, , drop=FALSE], multidim_matrix = TRUE) ## End(Not run) ```