Learn R Programming

⚠️There's a newer version (1.44.0) of this package.Take me there.

mirt

Multidimensional item response theory in R.

Description

Analysis of dichotomous and polytomous response data using unidimensional and multidimensional latent trait models under the Item Response Theory paradigm. Exploratory and confirmatory models can be estimated with quadrature (EM) or stochastic (MHRM) methods. Confirmatory bi-factor and two-tier analyses are available for modeling item testlets. Multiple group analysis and mixed effects designs also are available for detecting differential item functioning and modeling item and person covariates.

Examples and evaluated help files are available on the wiki

Various examples and worked help files have been compiled using the knitr package to generate HTML output, and are available on the package wiki. User contributions are welcome!

Installing from source

It's recommended to use the development version of this package since it is more likely to be up to date than the version on CRAN. To install this package from source:

  1. Obtain recent gcc, g++, and gfortran compilers. Windows users can install the Rtools suite while Mac users will have to download the necessary tools from the Xcode suite and its related command line tools (found within Xcode's Preference Pane under Downloads/Components); most Linux distributions should already have up to date compilers (or if not they can be updated easily). Windows users should include the checkbox option of installing Rtools to their path for easier command line usage.

  2. Install the devtools package (if necessary). In R, paste the following into the console:

install.packages('devtools')
  1. Load the devtools package (requires version 1.4+) and install from the Github source code.
library('devtools')
install_github('philchalmers/mirt')

Installing from source via git

If the devtools approach does not work on your system, then you can download and install the repository directly.

  1. Obtain recent gcc, g++, and gfortran compilers (see above instructions).

  2. Install the git command line tools.

  3. Open a terminal/command-line tool. The following code will download the repository

code to your computer, and install the package directly using R tools (Windows users may also have to add R and git to their path)

git clone https://github.com/philchalmers/mirt
R CMD INSTALL mirt

Special Mac OS X Installation Instructions

In some reported cases XCode does not install the appropriate gfortran compilers in the correct location, therefore they have to be installed manually instead. This is accomplished by inputing the following instructions into the terminal:

curl -O http://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2
sudo tar fvxz gfortran-4.8.2-darwin13.tar.bz2 -C /

Licence

This package is free and open source software, licensed under GPL (>= 3).

Bugs and Questions

Bug reports are always welcome and the preferred way to address these bugs is through the Github 'issues'. Feel free to submit issues or feature requests on the site, and I'll address them ASAP. Also, if you have any questions about the package, or IRT in general, then feel free to create a 'New Topic' in the mirt-package Google group. Cheers!

Copy Link

Version

Install

install.packages('mirt')

Monthly Downloads

8,572

Version

1.30

License

GPL (>= 3)

Issues

Pull Requests

Stars

Forks

Maintainer

Phil Chalmers

Last Published

January 28th, 2025

Functions in mirt (1.30)

Bock1997

Description of Bock 1997 data
averageMI

Collapse values from multiple imputation draws
PLCI.mirt

Compute profiled-likelihood (or posterior) confidence intervals
DiscreteClass-class

Class "DiscreteClass"
extract.item

Extract an item object from mirt objects
coef-method

Extract raw coefs from model object
extract.group

Extract a group from a multiple group mirt object
SIBTEST

Simultaneous Item Bias Test (SIBTEST)
SAT12

Description of SAT12 data
createGroup

Create a user defined group-level object with correct generic functions
LSAT6

Description of LSAT6 data
bfactor

Full-Information Item Bi-factor and Two-Tier Analysis
estfun.AllModelClass

Extract Empirical Estimating Functions
expected.item

Function to calculate expected value of item
expected.test

Function to calculate expected test score
itemGAM

Parametric smoothed regression lines for item response probability functions
mirt-package

Full information maximum likelihood estimation of IRT models.
itemfit

Item fit statistics
mdirt

Multidimensional discrete item response theory
print-method

Print the model objects
expand.table

Expand summary table of patterns and frequencies
LSAT7

Description of LSAT7 data
draw_parameters

Draw plausible parameter instantiations from a given model
MDIFF

Compute multidimensional difficulty index
M2

Compute the M2 model fit statistic
empirical_ES

Empirical effect sizes based on latent trait estimates
print.mirt_df

Print generic for customized data.frame console output
logLik-method

Extract log-likelihood
anova-method

Compare nested models with likelihood-based statistics
MDISC

Compute multidimensional discrimination index
extract.mirt

Extract various elements from estimated model objects
MixedClass-class

Class "MixedClass"
marginal_rxx

Function to calculate the marginal reliability
mirtCluster

Define a parallel cluster object to be used in internal functions
fixef

Compute latent regression fixed effect expected values
boot.LR

Parametric bootstrap likelihood-ratio test
areainfo

Function to calculate the area under a selection of information curves
testinfo

Function to calculate test information
thetaComb

Create all possible combinations of vector input
MixtureClass-class

Class "MixtureClass"
boot.mirt

Calculate bootstrapped standard errors for estimated models
mixedmirt

Mixed effects modeling for MIRT models
fscores

Compute factor score estimates (a.k.a, ability estimates, latent trait estimates, etc)
empirical_plot

Function to generate empirical unidimensional item and test plots
iteminfo

Function to calculate item information
probtrace

Function to calculate probability trace lines
empirical_rxx

Function to calculate the empirical (marginal) reliability
itemplot

Displays item surface and information plots
imputeMissing

Imputing plausible data for missing values
mod2values

Convert an estimated mirt model to a data.frame
key2binary

Score a test by converting response patterns to binary data
multipleGroup

Multiple Group Estimation
lagrange

Lagrange test for freeing parameters
print.mirt_list

Print generic for customized list console output
randef

Compute posterior estimates of random effect
wald

Wald statistics for mirt models
mirt

Full-Information Item Factor Analysis (Multidimensional Item Response Theory)
mirt.model

Specify model loadings
residuals-method

Compute model residuals
print.mirt_matrix

Print generic for customized matrix console output
numerical_deriv

Compute numerical derivatives
show-method

Show model object
traditional2mirt

Convert traditional IRT metric into slope-intercept form used in mirt
personfit

Person fit statistics
plot-method

Plot various test-implied functions from models
poly2dich

Change polytomous items to dichotomous item format
vcov-method

Extract parameter variance covariance matrix
summary-method

Summary of model object
simdata

Simulate response patterns
DIF

Differential item functioning statistics
createItem

Create a user defined item with correct generic functions
deAyala

Description of deAyala data
SingleGroupClass-class

Class "SingleGroupClass"
Science

Description of Science data
DRF

Differential Response Functioning statistics
DTF

Differential test functioning statistics
MultipleGroupClass-class

Class "MultipleGroupClass"