areainfo {mirt}R Documentation

Function to calculate the area under a selection of information curves

Description

Compute the area within test or item information over a definite integral range.

Usage

areainfo(x, theta_lim, which.items = 1:extract.mirt(x, "nitems"), ...)

Arguments

x

an estimated mirt object

theta_lim

range of integration to be computed

which.items

an integer vector indicating which items to include in the expected information function. Default uses all possible items

...

additional arguments passed to integrate

Value

a data.frame with the lower and upper integration range, the information area within the range (Info), the information area over the range -10 to 10 (Total.Info), proportion of total information given the integration range (Info.Proportion), and the number of items included (nitems)

Author(s)

Phil Chalmers rphilip.chalmers@gmail.com

Examples


## Not run: 
dat <- expand.table(LSAT7)
mod <- mirt(dat, 1)

areainfo(mod, c(-2,0), which.items = 1) #item 1
areainfo(mod, c(-2,0), which.items = 1:3) #items 1 to 3
areainfo(mod, c(-2,0)) # all items (total test information)

# plot the area
area <- areainfo(mod, c(-2,0))
Theta <- matrix(seq(-3,3, length.out=1000))
info <- testinfo(mod, Theta)
plot(info ~ Theta, type = 'l')

pick <- Theta >= -2 & Theta <=0
polygon(c(-2, Theta[pick], 0), c(0, info[pick], 0), col='lightblue')
text(x = 2, y = 0.5, labels = paste("Total Information:", round(area$TotalInfo, 3),
           "\n\nInformation in (-2, 0):", round(area$Info, 3),
           paste("(", round(100 * area$Proportion, 2), "%)", sep = "")), cex = 1.2)


## End(Not run)

[Package mirt version 1.21 Index]