見出し画像

R言語によるRasch分析_評定尺度モデル

Rで評定尺度モデルの分析を行う場合のスクリプトについてまとめます。
評定尺度モデルは選択肢が多肢選択の場合に対応したRaschモデルで、RではeRmライブラリでパラメータの推定が可能です。

 #ライブラリの呼び出し 
install.packages("eRm")
library(eRm)
 #サンプルデータの読み込み 
dat=pcmdat2[c(1:150),-4]
 #パラメータの推定 
result.RM=RSM(dat)
summary(result.RM)
score.RM=person.parameter(result.RM)$thetapar

eRmライブラリで評定尺度モデルのパラメータ推定を行うコードです。
折角なので、IRTの段階反応モデルで個人スコアを推定した場合と結果を比較してみます。

library(ltm)
result.GRM=grm(dat)
score.GRM=factor.scores(result.GRM,resp.patterns=dat)$score.dat$z1

下図の左が評定尺度モデルによる能力特性値の分布、右が段階反応モデルによる能力特性値の分布です。今回、実験的に項目数を3問としていますが、識別力パラメータを含む分、段階反応モデルのほうが能力特性値の値の実質的なバリーションが多いことがわかります。
また評定尺度モデルの場合、デフォルトの設定では、いわゆる零点の場合と満点の場合にはスコアの推定ができないようです。

評定尺度モデルと段階反応モデルのスコアの同時分布

横軸を段階反応モデルによる能力特性値の推定値、縦軸を評定尺度モデルによる能力特性値の推定値として回答者をプロットしたのが上の図です。相関係数はr=.95と高いですが、完全には一致しないことがわかります。

以上。この記事がなにかの参考になれば幸いです。

この記事が気に入ったらサポートをしてみませんか?