You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

含关联项目与大量缺失值的IRT分析:适配R包咨询

适用于项目族IRT分析的R包推荐

针对你这种多项目族(每组仅作答1题)且需支持项目层面协变量的IRT分析需求,推荐以下几个R包:

1. mirt

这是当前功能最全面的IRT分析工具之一,完美适配你的场景:

  • 支持矩阵抽样/项目族设计:可以通过multipleGroup函数或自定义项目模型,明确指定哪些项目属于同一族;
  • 轻松纳入项目层面协变量:定义项目模型时,可通过公式形式(比如item ~ covariate)将项目协变量与项目参数(难度、区分度等)关联;
  • 数据格式兼容:你提供的宽格式数据,可先用tidyr::pivot_longer转换为长格式(被试ID、项目族ID、项目ID、得分),再传入mirt函数。

示例思路(伪代码):

# 转换数据格式
long_data <- wide_data %>%
  pivot_longer(cols = everything(), 
               names_to = c("item_group", "item_id"), 
               names_sep = "", 
               values_to = "score") %>%
  filter(!is.na(score))

# 定义带项目协变量的IRT模型
model <- mirt(long_data, 
              model = 1, 
              itemtype = "2PL",
              covdata = item_covariates, # 项目层面协变量数据集
              itemdesign = ~ item_group + item_covariate)

2. TAM

专门针对教育测量场景开发的IRT包,对矩阵抽样(项目族)设计的支持非常友好:

  • 内置itemdesign参数,可直接指定项目所属的族,处理“每组仅答1题”的抽样设计;
  • 支持项目参数与协变量的关联:通过tam.mml函数的formulaA(区分度)、formulaB(难度)参数,直接将项目协变量纳入模型;
  • 支持多种IRT模型(1PL、2PL、3PL、GPCM等)。

3. ltm

如果你的需求偏向基础IRT模型(比如2PL),ltm也能满足:

  • 通过constraints参数定义项目族的结构(比如同一族的项目共享某些参数约束);
  • 可通过rasch或2pl函数的covariates参数,结合项目层面协变量构建模型。

数据格式转换提示

你当前的宽格式数据(空值表示未作答)需要先转换为长格式,保留每个被试实际作答的项目信息,这样所有IRT包都能更好地处理。

内容的提问来源于stack exchange,提问作者Matt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 13:00:50