在R里估计IRT模型时,我一般用mirt()函数,最近开始用ltm()函数,于是就遇到了一个问题(以ltm包自带的WIRS数据为例):
以前用mirt()函数的时候,使用coef()函数可以很方便地提取出题目参数,但是这次用coef()函数提取ltm()函数里的难度和区分度时,发现区分度没问题,只是名称不同(mirt中叫a1参数,ltm中叫Dscrmn),但是难度就不对了,不只是名称不同(mirt中叫d参数,ltm中叫Dffclt),数值也不同(比如WIRS第一题的难度,mirt算出来是-0.522,ltm算出来是3.401)。
后来用“$coefficients”的方法从ltm的结果中提取出了每道题目的截距(Intercept)和在z1因子上的载荷,这时就可以和mirt的结果对上了。
所以,coef()提取出来的难度和“$coefficients”提取出来的截距到底是什么关系呢?有没有什么方法可以对二者进行换算呢?
coef(results)的结果是:
results$coefficients的结果是: