Извлечение z-показателей из factor.scores с использованием пакета ltm? - PullRequest
3 голосов
/ 29 февраля 2012

Мой код ниже для целей репликации. Я создал модель с двумя параметрами, используя пакет ltm. Я также использовал функцию factor.scores для вычисления значения z1 для каждого ответа, который является вторым или последним рядом в объекте response_pattern ниже.

Мой вопрос: как я могу извлечь значение z1 из объекта response_pattern, чтобы это вектор, который я мог использовать в другом месте? Это должен быть вектор длиной 12, по одному z1 для каждого ответа.

  item1 <- cbind(1,0,1,0,1,1,0,0,0,0,1,0)
  item2 <- cbind(0,0,0,1,0,1,0,1,0,0,1,0)
  item3 <- cbind(1,0,1,0,1,1,0,1,1,0,0,0)
  item4 <- cbind(0,0,1,1,0,1,0,0,0,1,1,1)

  Items <- matrix(c(item1, item2, item3, item4), ncol=4)

  library(ltm)
  fit <- ltm(Items ~ z1) # two parameter IRT model 

  response_pattern <- factor.scores(fit, resp.patterns = Items, method = "EB", return.MIvalues = TRUE) #Gets a z score for each response
  response_pattern  

Спасибо!

1 Ответ

2 голосов
/ 29 февраля 2012

?str - один из самых полезных инструментов в вашем наборе инструментов R.

> str(response_pattern)
List of 6
 $ score.dat:'data.frame':  12 obs. of  8 variables:
  ..$ Item 1: num [1:12] 1 0 1 0 1 1 0 0 0 0 ...
  ..$ Item 2: num [1:12] 0 0 0 1 0 1 0 1 0 0 ...
  ..$ Item 3: num [1:12] 1 0 1 0 1 1 0 1 1 0 ...
  ..$ Item 4: num [1:12] 0 0 1 1 0 1 0 0 0 1 ...
  ..$ Obs   : num [1:12] 2 2 1 1 2 1 2 1 1 2 ...
  ..$ Exp   : num [1:12] 1.051 1.948 1.225 0.668 1.051 ...
  ..$ z1    : num [1:12] 0.46 -0.6 0.519 -0.326 0.46 ...
  ..$ se.z1 : num [1:12] 0.558 0.797 0.66 0.713 0.558 ...
 $ method   : chr "EB"
 $ B        : num 5
 $ call     : language ltm(formula = Items ~ z1)
 $ resp.pats: logi TRUE
 $ coef     : num [1:4, 1:2] 0.125 2.3196 0.0241 0.0197 14.6276 ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:4] "Item 1" "Item 2" "Item 3" "Item 4"
  .. ..$ : chr [1:2] "Dffclt" "Dscrmn"
 - attr(*, "class")= chr "fscores"


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