Package: ForceChoice 1.0.1

ForceChoice: Forced-Choice Modeling Based on Item Response Theory and Cognitive Diagnostic Models

Fits, simulates, and evaluates forced-choice and traditional item response theory (IRT) models for noncognitive assessment. Eight model families are supported, spanning dominance (multidimensional IRT (MIRT) 1PL--4PL; multidimensional generalized partial credit model (MGPCM)), ideal-point unfolding (multidimensional generalized graded unfolding model (MGGUM)), and forced-choice designs (forced-choice multidimensional IRT (FCMIRT), forced-choice generalized graded unfolding model (FCGGUM), Thurstonian IRT (TIRT), forced-choice diagnostic classification model (FCDCM), forced-choice generalized deterministic inputs, noisy "and" gate model (FCGDINA)) that mitigate response biases such as acquiescence and social desirability. Core estimation backends include full Bayesian inference via Hamiltonian Monte Carlo (Stan) and a fast improved stochastic expectation-maximization (iStEM) algorithm suitable for large-scale data; FCGDINA also provides a deterministic expectation-maximization (EM) estimator. Comprehensive model evaluation uses the limited-information M2 family of goodness-of-fit statistics (Maydeu-Olivares and Joe, 2005 <doi:10.1198/016214504000002069>; 2006 <doi:10.1007/s11336-005-1295-9>) together with root mean square error of approximation (RMSEA), comparative fit index (CFI), Tucker-Lewis index (TLI), and standardized root mean square residual (SRMSR).

Authors:Haijiang Qin [aut, cre, cph], Lei Guo [aut, cph]

ForceChoice_1.0.1.tar.gz
ForceChoice_1.0.1.zip(r-4.7-x86_64)ForceChoice_1.0.1.zip(r-4.7-arm64)ForceChoice_1.0.1.zip(r-4.6-x86_64)ForceChoice_1.0.1.zip(r-4.6-arm64)ForceChoice_1.0.1.zip(r-4.5-x86_64)
ForceChoice_1.0.1.tgz(r-4.6-x86_64)ForceChoice_1.0.1.tgz(r-4.6-arm64)ForceChoice_1.0.1.tgz(r-4.5-x86_64)ForceChoice_1.0.1.tgz(r-4.5-arm64)
ForceChoice_1.0.1.tar.gz(r-4.7-arm64)ForceChoice_1.0.1.tar.gz(r-4.7-x86_64)ForceChoice_1.0.1.tar.gz(r-4.6-arm64)ForceChoice_1.0.1.tar.gz(r-4.6-x86_64)
ForceChoice_1.0.1.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
ForceChoice/json (API)

# Install 'ForceChoice' in R:
install.packages('ForceChoice', repos = c('https://haijiangq.r-universe.dev', 'https://cloud.r-project.org'))
Uses libs:
  • onetbb– Parallelism library for C++
  • c++– GNU Standard C++ Library v3
Datasets:
  • triplets - Triplets of Pairwise Comparisons

On CRAN:

Conda:

This package does not link to any Github/Gitlab/R-forge repository. No issue tracker or development information is available.

onetbbcpp

3.30 score 372 downloads 31 exports 53 dependencies

Last updated from:7b635b5f5c. Checks:15 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-arm64OK409
linux-devel-x86_64OK731
source / vignettesOK1114
linux-release-arm64OK588
linux-release-x86_64OK511
macos-release-arm64OK620
macos-release-x86_64OK1193
macos-oldrel-arm64OK577
macos-oldrel-x86_64OK985
windows-devel-arm64OK1060
windows-devel-x86_64OK785
windows-release-arm64OK844
windows-release-x86_64OK881
windows-oldrel-x86_64OK838
wasm-releaseOK459

Exports:extractfit.FCDCMfit.FCGDINAfit.FCGGUMfit.FCMIRTfit.MGGUMfit.MGPCMfit.MIRTfit.TIRTget.block.items.from.dataget.block.items.from.data.FCDCMget.data.from.responseget.data.from.response.FCDCMget.data.from.response.TIRTget.fit.indexget.log_likget.response.from.dataget.response.from.data.FCDCMget.response.from.data.TIRTgood.of.fitmodel.FCGDINArotatesim.data.FCDCMsim.data.FCGDINAsim.data.FCGGUMsim.data.FCMIRTsim.data.MGGUMsim.data.MGPCMsim.data.MIRTsim.data.TIRTsummary.good.of.fit

Dependencies:abindbackportsBHcallrcheckmateclicodacpp11descdistributionalfarvergenericsggplot2glueGPArotationgridExtragtableinlineisobandlabelinglatticelifecycleloomagrittrMASSmatrixStatsnumDerivotelpillarpkgbuildpkgconfigposteriorprocessxpsQuickJSRR6RColorBrewerRcppRcppArmadilloRcppEigenRcppParallelrlangrstanrstantoolsS7scalesStanHeaderstensorAtibbleutf8vctrsviridisLitewithr

Introduction to ForceChoice
Overview | Model Families | Model and Backend Coverage | Estimation Backends | Installation | Quick Start: Traditional IRT | Simulating and Fitting a MIRT Model | Goodness-of-Fit Evaluation | Forced-Choice Modeling | Simulating and Fitting FCMIRT | Thurstonian IRT (TIRT) | Forced-Choice DCM (FCDCM) | Forced-Choice GDINA (FCGDINA) | Working with Polytomous Data | MGPCM (Dominance) | MGGUM (Ideal-Point / Unfolding) | Solution Rotation | Diagnostic Plots | Estimation Control | Common Parameters (top-level) | Stan-Specific Control | iStEM-Specific Control (advanced) | References

Last update: 2026-07-30
Started: 2026-07-30

ForceChoice Model Theory and Selection Guide
Overview | Traditional (Single-Stimulus) Models | MIRT: Multidimensional Item Response Theory | MGPCM: Multidimensional Generalized Partial Credit Model | MGGUM: Multidimensional Generalized Graded Unfolding Model | Forced-Choice (Comparative) Models | FCMIRT: Forced-Choice MIRT | FCGGUM: Forced-Choice GGUM | TIRT: Thurstonian IRT for Forced-Choice | FCDCM: Forced-Choice Diagnostic Classification Model | FCGDINA: Forced-Choice GDINA | Model Selection Guide | Estimation Method Selection | Goodness-of-Fit Framework | References

Last update: 2026-07-30
Started: 2026-07-30

Readme and manuals

Help Manual

Help pageTopics
ForceChoice: Forced-Choice Modeling Based on IRT and CDMForceChoice-package ForceChoice
S3 Methods: coefcoef coef.FCDCM coef.FCGDINA coef.FCGGUM coef.FCMIRT coef.MGGUM coef.MGPCM coef.MIRT coef.TIRT
S3 Methods: confintconfint confint.FCDCM confint.FCGDINA confint.FCGGUM confint.FCMIRT confint.MGGUM confint.MGPCM confint.MIRT confint.TIRT
S3 Methods: deviancedeviance deviance.FCDCM deviance.FCGDINA deviance.FCGGUM deviance.FCMIRT deviance.MGGUM deviance.MGPCM deviance.MIRT deviance.TIRT
S3 Methods: extractextract extract.FCDCM extract.FCGDINA extract.FCGGUM extract.FCMIRT extract.MGGUM extract.MGPCM extract.MIRT extract.TIRT
Fit the Forced-Choice Diagnostic Classification Model (FCDCM)fit.FCDCM
Fit the Forced-Choice GDINA Modelfit.FCGDINA
Fit the Forced-Choice Generalized Graded Unfolding Model (FCGGUM)fit.FCGGUM
Fit the Forced-Choice Multidimensional IRT (FCMIRT) Modelfit.FCMIRT
Fit the Multidimensional Generalized Graded Unfolding Model (MGGUM)fit.MGGUM
Fit the Multidimensional Generalized Partial Credit Model (MGPCM)fit.MGPCM
Fit the Multidimensional Item Response Theory (MIRT) Modelfit.MIRT
Fit the Thurstonian Item Response Theory (TIRT) Modelfit.TIRT
S3 Methods: fittedfitted fitted.FCDCM fitted.FCGDINA fitted.FCGGUM fitted.FCMIRT fitted.MGGUM fitted.MGPCM fitted.MIRT fitted.TIRT
Forced-Choice Data Conversion Formatsforced_choice_data_conversion
Extract Block Items from Forced-Choice Dataget.block.items.from.data
Extract Block Items from FCDCM Dataget.block.items.from.data.FCDCM
Convert an Integer Response (Pattern-Index) Matrix to FC Data Stringsget.data.from.response
Convert an FCDCM Response Matrix to FC Data Stringsget.data.from.response.FCDCM
Convert TIRT Pairwise-Response Matrix to Forced-Choice Data Stringsget.data.from.response.TIRT
Goodness-of-Fit Indices for Fitted Modelsget.fit.index get.fit.index.FCDCM get.fit.index.FCGDINA get.fit.index.FCGGUM get.fit.index.FCMIRT get.fit.index.MGGUM get.fit.index.MGPCM get.fit.index.MIRT get.fit.index.TIRT
Extract pointwise log-likelihood matrixget.log_lik get.log_lik.default
Convert FC Data Strings to an Integer Response (Pattern-Index) Matrixget.response.from.data
Convert FCDCM Data Strings to a Binary Response Matrixget.response.from.data.FCDCM
Convert TIRT Forced-Choice Data to Pairwise-Response Matrixget.response.from.data.TIRT
Goodness-of-Fit Indices for Latent Probability Modelsgood.of.fit
S3 Methods: nobsnobs nobs.FCDCM nobs.FCGDINA nobs.FCGGUM nobs.FCMIRT nobs.MGGUM nobs.MGPCM nobs.MIRT nobs.TIRT
S3 Methods: plotplot plot.FCDCM plot.FCGDINA plot.FCGGUM plot.FCMIRT plot.MGGUM plot.MGPCM plot.MIRT plot.TIRT
S3 Methods: predictpredict predict.FCDCM predict.FCGDINA predict.FCGGUM predict.FCMIRT predict.MGGUM predict.MGPCM predict.MIRT predict.TIRT
S3 Methods: printprint print.data.FCDCM print.data.FCGDINA print.data.FCGGUM print.data.FCMIRT print.data.MGGUM print.data.MGPCM print.data.MIRT print.data.TIRT print.FCDCM print.FCGDINA print.FCGGUM print.FCMIRT print.good.of.fit print.MGGUM print.MGPCM print.MIRT print.summary.FCDCM print.summary.FCGDINA print.summary.FCGGUM print.summary.FCMIRT print.summary.good.of.fit print.summary.MGGUM print.summary.MGPCM print.summary.MIRT print.summary.TIRT print.TIRT
S3 Methods: residualsresiduals residuals.FCDCM residuals.FCGDINA residuals.FCGGUM residuals.FCMIRT residuals.MGGUM residuals.MGPCM residuals.MIRT residuals.TIRT
S3 Methods: rotaterotate rotate.MGPCM rotate.MIRT
Simulate Data from the Forced-Choice DCM Modelsim.data.FCDCM
Simulate Forced-Choice GDINA Datasim.data.FCGDINA
Simulate Data from the Forced-Choice GGUM Modelsim.data.FCGGUM
Simulate FCMIRT Datasim.data.FCMIRT
Simulate Data from the Multidimensional Generalized Graded Unfolding Modelsim.data.MGGUM
Simulate Data from the Multidimensional Generalized Partial Credit Modelsim.data.MGPCM
Simulate Data from the Multidimensional IRT (MIRT) Modelsim.data.MIRT
Simulate Data from the Thurstonian IRT (TIRT) Modelsim.data.TIRT
S3 Methods: summarysummary summary.FCDCM summary.FCGDINA summary.FCGGUM summary.FCMIRT summary.good.of.fit summary.MGGUM summary.MGPCM summary.MIRT summary.TIRT
Triplets of Pairwise Comparisonstriplets
S3 Methods: updateupdate update.FCDCM update.FCGDINA update.FCGGUM update.FCMIRT update.MGGUM update.MGPCM update.MIRT update.TIRT
S3 Methods: vcovvcov vcov.FCDCM vcov.FCGDINA vcov.FCGGUM vcov.FCMIRT vcov.MGGUM vcov.MGPCM vcov.MIRT vcov.TIRT