Я можу запропонувати вам принаймні два пакети, які дозволяють виконувати ці завдання: psych ( score.items
) та ltm ( descript
). Пакет CTT також здається, що він обробляє MCQ, але я не маю цього досвіду. Більше інформації можна знайти на веб-сайті W Revelle, The Personality Project , esp. сторінка, присвячена психометриці з R, яка містить покрокові інструкції щодо імпорту, аналізу та звітних даних. Крім того, перегляд завдань CRAN з психометрики включає багато додаткових ресурсів.
Як описано у вашому посиланні, MC означає "Середня загальна оцінка балів осіб, які відповіли на запитання правильною відповіддю", а MI - "Середня загальна оцінка осіб, які не відповіли на запитання правильною відповіддю". Точково-бісеріальна кореляція (R (IT)) також доступна в ltm
упаковці ( biserial.cor
). Це, в основному, показник потужності дискримінації предмета (оскільки це співвідношення предмета та загальної оцінки) і пов'язаний з параметром дискримінації ІРТ-моделі 2-PL або завантаженням факторів у Факторному аналізі.
Якщо ви дійсно хочете відтворити показану вами таблицю, я думаю, вам доведеться обгорнути частину цього коду спеціальним кодом, принаймні, щоб вивести той самий вид таблиці. Я зробив швидкий і брудний приклад, який відтворює вашу таблицю:
dat <- replicate(10, sample(LETTERS[1:4], 100, rep=TRUE))
dat[3,2] <- dat[67,5] <- NA
itan(dat)
P R MC MI NC OMIT A B C D
[1,] 0.23 -0.222 2.870 2.169 23 0 23 22 32 23
[2,] 0.32 -0.378 3.062 1.985 32 1 32 20 14 33
[3,] 0.18 -0.197 2.889 2.207 18 0 18 33 22 27
[4,] 0.33 -0.467 3.212 1.896 33 0 33 18 29 20
[5,] 0.27 -0.355 3.111 2.056 27 1 27 23 23 26
[6,] 0.17 -0.269 3.118 2.169 17 0 17 25 25 33
[7,] 0.21 -0.260 3.000 2.152 21 0 21 24 25 30
[8,] 0.24 -0.337 3.125 2.079 24 0 24 32 22 22
[9,] 0.13 -0.218 3.077 2.218 13 0 13 29 33 25
[10,] 0.25 -0.379 3.200 2.040 25 0 25 25 31 19
Оскільки це випадкові відповіді, бісеріальна кореляція та складність предметів не мають великого значення (за винятком перевірки того, що дані справді випадкові :). Крім того, варто перевірити можливі помилки, оскільки я склав функцію R в 10 '...
freq.resp <- raw.resp/apply(raw.resp, 1, sum, na.rm=T)
. Помилка полягає в тому, що "dim (X) повинен мати позитивну довжину", а dim (raw.resp) - NULL. Можливо, так як у моїх даних немає всіх параметрів із позитивною частотою, мої таблиці не однакові за довжиною? Як я можу заповнити нулі уtable
виклику?