Как получить значение подогнанной кривой из модели IRT в конкретной точке в R? - PullRequest
0 голосов
/ 16 ноября 2018

Итак, у меня есть некоторые данные, которым я подгоняю модель ответа IRT, используя этот код:

hdat <- read.csv("data.csv", header=TRUE)


library("mirt")


model.grm <- 'height = 1-9'
results.grm <- mirt(data=hdat, model=model.grm, itemtype="graded", SE=TRUE, verbose=FALSE)
coef.grm <- coef(results.grm, IRTpars=TRUE, simplify=TRUE)
items.grm <- as.data.frame(coef.grm$items)
print(items.grm)

png(filename="plot.png")

plot(results.grm, type = 'trace', which.items = c(1),
main = "", par.settings = simpleTheme(lty=1:4,lwd=2),
auto.key=list(points=FALSE,lines=TRUE, columns=4))

dev.off()

И я получаю этот график:

graph

Как мне узнать значение, скажем, P2 при тета = -1?

Я думаю, что объект, который я представляю, - это results.grm@ParObjects$pars[[1]], который имеет следующее содержание:

Formal class 'graded' [package "mirt"] with 23 slots
  ..@ par          : num [1:5] 4.888 2.815 0.561 -1.728 -5.509
  ..@ SEpar        : num [1:5] 0.0421 0.0311 0.0252 0.0279 0.0472
  ..@ parnames     : chr [1:5] "a1" "d1" "d2" "d3" ...
  ..@ est          : Named logi [1:5] TRUE TRUE TRUE TRUE TRUE
  .. ..- attr(*, "names")= chr [1:5] "a1" "d1" "d2" "d3" ...
  ..@ dps          :function ()  
  ..@ dps2         :function ()  
  ..@ constr       : logi(0) 
  ..@ itemclass    : int 2
  ..@ parnum       : Named int [1:5] 1 2 3 4 5
  .. ..- attr(*, "names")= chr [1:5] "a1" "d1" "d2" "d3" ...
  ..@ nfact        : int 1
  ..@ nfixedeffects: num 0
  ..@ fixed.design : num [1, 1] 0
  ..@ dat          : num [1, 1] 0
  ..@ ncat         : int 5
  ..@ gradient     : num(0) 
  ..@ hessian      : num [1:5, 1:5] -4814 1846 362 -1200 -2266 ...
  ..@ itemtrace    : num[0 , 0 ] 
  ..@ lbound       : num [1:5] -Inf -Inf -Inf -Inf -Inf
  ..@ ubound       : num [1:5] Inf Inf Inf Inf Inf
  ..@ any.prior    : logi FALSE
  ..@ prior.type   : int [1:5] 0 0 0 0 0
  ..@ prior_1      : num [1:5] NaN NaN NaN NaN NaN
  ..@ prior_2      : num [1:5] NaN NaN NaN NaN NaN

1 Ответ

0 голосов
/ 17 ноября 2018

probtrace (extract.item (results.grm, 1), c (-1)) должно работать - также, возможно, будет полезно взглянуть на https://github.com/philchalmers/mirt/issues/21

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...