# Load Library dan Data
library(readxl)
library(mirt)
## Warning: package 'mirt' was built under R version 4.4.3
## Loading required package: stats4
## Loading required package: lattice
datasampel <- read_excel("C:/Users/ASUS/Documents/UNY/MySta/SEM 4/Statistika Pendidikan/UTS_Statpen/Dataset_Lana.xlsx", sheet = 4)
datasampel
## # A tibble: 900 × 37
##       b1    b2    b3    b4    b5    b6    b7    b8    b9   b10   b11   b12   b13
##    <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
##  1     1     1     0     0     0     1     1     0     0     0     1     0     1
##  2     1     1     1     0     0     0     1     0     1     1     0     0     0
##  3     1     0     1     1     1     0     1     0     1     1     0     0     0
##  4     1     0     0     0     0     0     0     1     0     0     0     0     0
##  5     1     0     0     1     1     0     0     0     0     0     1     0     0
##  6     1     0     0     0     0     0     0     1     1     1     1     1     0
##  7     1     1     0     1     0     1     1     1     1     0     0     1     0
##  8     1     1     1     1     1     1     1     1     1     1     1     1     1
##  9     1     1     1     1     1     1     1     1     1     1     1     1     1
## 10     1     1     1     1     1     1     1     1     1     1     0     1     1
## # ℹ 890 more rows
## # ℹ 24 more variables: b14 <dbl>, b15 <dbl>, b16 <dbl>, b17 <dbl>, b18 <dbl>,
## #   b19 <dbl>, b20 <dbl>, b21 <dbl>, b22 <dbl>, b23 <dbl>, b24 <dbl>,
## #   b25 <dbl>, b26 <dbl>, b27 <dbl>, b28 <dbl>, b29 <dbl>, b30 <dbl>,
## #   b31 <dbl>, b32 <dbl>, b33 <dbl>, b34 <dbl>, b35 <dbl>, b36 <dbl>, b37 <dbl>
# Estimasi Model Rasch, 1PL, 2PL, 3PL, 4PL

# Model Rasch
mod_rasch <- mirt(datasampel, 1, itemtype = "Rasch", SE = TRUE)
## Iteration: 1, Log-Lik: -18234.057, Max-Change: 0.44424Iteration: 2, Log-Lik: -18180.942, Max-Change: 0.22401Iteration: 3, Log-Lik: -18173.188, Max-Change: 0.08937Iteration: 4, Log-Lik: -18172.000, Max-Change: 0.03228Iteration: 5, Log-Lik: -18171.674, Max-Change: 0.01122Iteration: 6, Log-Lik: -18171.480, Max-Change: 0.00583Iteration: 7, Log-Lik: -18170.949, Max-Change: 0.00444Iteration: 8, Log-Lik: -18170.875, Max-Change: 0.00340Iteration: 9, Log-Lik: -18170.813, Max-Change: 0.00314Iteration: 10, Log-Lik: -18170.563, Max-Change: 0.00167Iteration: 11, Log-Lik: -18170.548, Max-Change: 0.00158Iteration: 12, Log-Lik: -18170.536, Max-Change: 0.00143Iteration: 13, Log-Lik: -18170.486, Max-Change: 0.00090Iteration: 14, Log-Lik: -18170.483, Max-Change: 0.00072Iteration: 15, Log-Lik: -18170.480, Max-Change: 0.00064Iteration: 16, Log-Lik: -18170.470, Max-Change: 0.00047Iteration: 17, Log-Lik: -18170.469, Max-Change: 0.00035Iteration: 18, Log-Lik: -18170.469, Max-Change: 0.00029Iteration: 19, Log-Lik: -18170.467, Max-Change: 0.00025Iteration: 20, Log-Lik: -18170.467, Max-Change: 0.00018Iteration: 21, Log-Lik: -18170.467, Max-Change: 0.00013Iteration: 22, Log-Lik: -18170.466, Max-Change: 0.00014Iteration: 23, Log-Lik: -18170.466, Max-Change: 0.00011Iteration: 24, Log-Lik: -18170.466, Max-Change: 0.00006
## 
## Calculating information matrix...
# Model 1PL (manual constraint)
model_1pl <- '
F1 = 1-37
CONSTRAIN = (1-37, a1)
'
mod_1pl <- mirt(datasampel, model_1pl, itemtype = "2PL", SE = TRUE)
## Iteration: 1, Log-Lik: -18319.671, Max-Change: 0.24172Iteration: 2, Log-Lik: -18242.038, Max-Change: 0.08368Iteration: 3, Log-Lik: -18209.273, Max-Change: 0.06300Iteration: 4, Log-Lik: -18192.359, Max-Change: 0.04806Iteration: 5, Log-Lik: -18183.294, Max-Change: 0.03747Iteration: 6, Log-Lik: -18178.142, Max-Change: 0.02845Iteration: 7, Log-Lik: -18175.219, Max-Change: 0.02284Iteration: 8, Log-Lik: -18173.429, Max-Change: 0.01799Iteration: 9, Log-Lik: -18172.348, Max-Change: 0.01420Iteration: 10, Log-Lik: -18170.701, Max-Change: 0.00339Iteration: 11, Log-Lik: -18170.647, Max-Change: 0.00274Iteration: 12, Log-Lik: -18170.609, Max-Change: 0.00221Iteration: 13, Log-Lik: -18170.514, Max-Change: 0.00128Iteration: 14, Log-Lik: -18170.508, Max-Change: 0.00098Iteration: 15, Log-Lik: -18170.503, Max-Change: 0.00135Iteration: 16, Log-Lik: -18170.483, Max-Change: 0.00203Iteration: 17, Log-Lik: -18170.479, Max-Change: 0.00095Iteration: 18, Log-Lik: -18170.477, Max-Change: 0.00070Iteration: 19, Log-Lik: -18170.469, Max-Change: 0.00025Iteration: 20, Log-Lik: -18170.468, Max-Change: 0.00019Iteration: 21, Log-Lik: -18170.468, Max-Change: 0.00015Iteration: 22, Log-Lik: -18170.468, Max-Change: 0.00016Iteration: 23, Log-Lik: -18170.468, Max-Change: 0.00046Iteration: 24, Log-Lik: -18170.467, Max-Change: 0.00007
## 
## Calculating information matrix...
# Model 2PL
mod_2pl <- mirt(datasampel, 1, itemtype = "2PL", SE = TRUE)
## Iteration: 1, Log-Lik: -18319.671, Max-Change: 0.70071Iteration: 2, Log-Lik: -17912.865, Max-Change: 0.36257Iteration: 3, Log-Lik: -17864.078, Max-Change: 0.21282Iteration: 4, Log-Lik: -17843.138, Max-Change: 0.14133Iteration: 5, Log-Lik: -17831.360, Max-Change: 0.09471Iteration: 6, Log-Lik: -17824.587, Max-Change: 0.07651Iteration: 7, Log-Lik: -17820.672, Max-Change: 0.06362Iteration: 8, Log-Lik: -17818.257, Max-Change: 0.05088Iteration: 9, Log-Lik: -17816.758, Max-Change: 0.04041Iteration: 10, Log-Lik: -17814.210, Max-Change: 0.01092Iteration: 11, Log-Lik: -17814.113, Max-Change: 0.00738Iteration: 12, Log-Lik: -17814.042, Max-Change: 0.00628Iteration: 13, Log-Lik: -17813.889, Max-Change: 0.00394Iteration: 14, Log-Lik: -17813.856, Max-Change: 0.00229Iteration: 15, Log-Lik: -17813.831, Max-Change: 0.00274Iteration: 16, Log-Lik: -17813.764, Max-Change: 0.00328Iteration: 17, Log-Lik: -17813.751, Max-Change: 0.00316Iteration: 18, Log-Lik: -17813.737, Max-Change: 0.00186Iteration: 19, Log-Lik: -17813.717, Max-Change: 0.00216Iteration: 20, Log-Lik: -17813.709, Max-Change: 0.00172Iteration: 21, Log-Lik: -17813.701, Max-Change: 0.00186Iteration: 22, Log-Lik: -17813.678, Max-Change: 0.00205Iteration: 23, Log-Lik: -17813.674, Max-Change: 0.00112Iteration: 24, Log-Lik: -17813.671, Max-Change: 0.00106Iteration: 25, Log-Lik: -17813.656, Max-Change: 0.00087Iteration: 26, Log-Lik: -17813.655, Max-Change: 0.00079Iteration: 27, Log-Lik: -17813.654, Max-Change: 0.00075Iteration: 28, Log-Lik: -17813.649, Max-Change: 0.00055Iteration: 29, Log-Lik: -17813.648, Max-Change: 0.00094Iteration: 30, Log-Lik: -17813.647, Max-Change: 0.00058Iteration: 31, Log-Lik: -17813.647, Max-Change: 0.00053Iteration: 32, Log-Lik: -17813.646, Max-Change: 0.00047Iteration: 33, Log-Lik: -17813.646, Max-Change: 0.00041Iteration: 34, Log-Lik: -17813.645, Max-Change: 0.00055Iteration: 35, Log-Lik: -17813.645, Max-Change: 0.00052Iteration: 36, Log-Lik: -17813.645, Max-Change: 0.00032Iteration: 37, Log-Lik: -17813.644, Max-Change: 0.00041Iteration: 38, Log-Lik: -17813.644, Max-Change: 0.00027Iteration: 39, Log-Lik: -17813.644, Max-Change: 0.00025Iteration: 40, Log-Lik: -17813.644, Max-Change: 0.00030Iteration: 41, Log-Lik: -17813.644, Max-Change: 0.00029Iteration: 42, Log-Lik: -17813.644, Max-Change: 0.00020Iteration: 43, Log-Lik: -17813.644, Max-Change: 0.00028Iteration: 44, Log-Lik: -17813.644, Max-Change: 0.00017Iteration: 45, Log-Lik: -17813.644, Max-Change: 0.00016Iteration: 46, Log-Lik: -17813.644, Max-Change: 0.00018Iteration: 47, Log-Lik: -17813.644, Max-Change: 0.00017Iteration: 48, Log-Lik: -17813.644, Max-Change: 0.00013Iteration: 49, Log-Lik: -17813.644, Max-Change: 0.00018Iteration: 50, Log-Lik: -17813.644, Max-Change: 0.00011Iteration: 51, Log-Lik: -17813.644, Max-Change: 0.00011Iteration: 52, Log-Lik: -17813.644, Max-Change: 0.00011Iteration: 53, Log-Lik: -17813.644, Max-Change: 0.00011Iteration: 54, Log-Lik: -17813.644, Max-Change: 0.00009
## 
## Calculating information matrix...
# Model 3PL
mod_3pl <- mirt(datasampel, 1, itemtype = "3PL", SE = TRUE)
## Iteration: 1, Log-Lik: -18466.198, Max-Change: 1.33901Iteration: 2, Log-Lik: -17833.579, Max-Change: 1.04865Iteration: 3, Log-Lik: -17722.932, Max-Change: 1.00107Iteration: 4, Log-Lik: -17668.865, Max-Change: 1.06276Iteration: 5, Log-Lik: -17636.884, Max-Change: 0.79878Iteration: 6, Log-Lik: -17616.663, Max-Change: 0.52681Iteration: 7, Log-Lik: -17604.003, Max-Change: 0.34090Iteration: 8, Log-Lik: -17595.859, Max-Change: 0.29281Iteration: 9, Log-Lik: -17590.653, Max-Change: 0.13529Iteration: 10, Log-Lik: -17587.336, Max-Change: 0.12865Iteration: 11, Log-Lik: -17585.030, Max-Change: 0.11517Iteration: 12, Log-Lik: -17583.369, Max-Change: 0.09447Iteration: 13, Log-Lik: -17579.430, Max-Change: 0.06327Iteration: 14, Log-Lik: -17579.068, Max-Change: 0.07337Iteration: 15, Log-Lik: -17578.809, Max-Change: 0.02336Iteration: 16, Log-Lik: -17578.659, Max-Change: 0.03832Iteration: 17, Log-Lik: -17578.449, Max-Change: 0.42498Iteration: 18, Log-Lik: -17578.226, Max-Change: 0.01934Iteration: 19, Log-Lik: -17578.208, Max-Change: 0.01937Iteration: 20, Log-Lik: -17578.038, Max-Change: 0.02234Iteration: 21, Log-Lik: -17577.882, Max-Change: 0.01844Iteration: 22, Log-Lik: -17577.704, Max-Change: 0.02018Iteration: 23, Log-Lik: -17577.581, Max-Change: 0.01524Iteration: 24, Log-Lik: -17577.474, Max-Change: 0.01763Iteration: 25, Log-Lik: -17577.335, Max-Change: 0.01558Iteration: 26, Log-Lik: -17577.247, Max-Change: 0.01356Iteration: 27, Log-Lik: -17577.170, Max-Change: 0.01284Iteration: 28, Log-Lik: -17576.806, Max-Change: 0.02291Iteration: 29, Log-Lik: -17576.762, Max-Change: 0.00878Iteration: 30, Log-Lik: -17576.730, Max-Change: 0.00952Iteration: 31, Log-Lik: -17576.610, Max-Change: 0.01686Iteration: 32, Log-Lik: -17576.583, Max-Change: 0.00691Iteration: 33, Log-Lik: -17576.566, Max-Change: 0.00600Iteration: 34, Log-Lik: -17576.494, Max-Change: 0.01285Iteration: 35, Log-Lik: -17576.481, Max-Change: 0.00411Iteration: 36, Log-Lik: -17576.474, Max-Change: 0.00389Iteration: 37, Log-Lik: -17576.440, Max-Change: 0.00439Iteration: 38, Log-Lik: -17576.436, Max-Change: 0.00147Iteration: 39, Log-Lik: -17576.433, Max-Change: 0.00242Iteration: 40, Log-Lik: -17576.428, Max-Change: 0.00235Iteration: 41, Log-Lik: -17576.425, Max-Change: 0.00230Iteration: 42, Log-Lik: -17576.423, Max-Change: 0.00171Iteration: 43, Log-Lik: -17576.418, Max-Change: 0.00434Iteration: 44, Log-Lik: -17576.415, Max-Change: 0.00149Iteration: 45, Log-Lik: -17576.413, Max-Change: 0.00393Iteration: 46, Log-Lik: -17576.412, Max-Change: 0.00123Iteration: 47, Log-Lik: -17576.409, Max-Change: 0.00104Iteration: 48, Log-Lik: -17576.408, Max-Change: 0.00126Iteration: 49, Log-Lik: -17576.404, Max-Change: 0.00400Iteration: 50, Log-Lik: -17576.402, Max-Change: 0.00087Iteration: 51, Log-Lik: -17576.401, Max-Change: 0.00100Iteration: 52, Log-Lik: -17576.400, Max-Change: 0.00058Iteration: 53, Log-Lik: -17576.399, Max-Change: 0.00044Iteration: 54, Log-Lik: -17576.399, Max-Change: 0.00220Iteration: 55, Log-Lik: -17576.398, Max-Change: 0.00043Iteration: 56, Log-Lik: -17576.398, Max-Change: 0.00206Iteration: 57, Log-Lik: -17576.397, Max-Change: 0.00101Iteration: 58, Log-Lik: -17576.397, Max-Change: 0.00054Iteration: 59, Log-Lik: -17576.397, Max-Change: 0.00172Iteration: 60, Log-Lik: -17576.396, Max-Change: 0.00127Iteration: 61, Log-Lik: -17576.396, Max-Change: 0.00059Iteration: 62, Log-Lik: -17576.396, Max-Change: 0.00156Iteration: 63, Log-Lik: -17576.395, Max-Change: 0.00138Iteration: 64, Log-Lik: -17576.395, Max-Change: 0.00058Iteration: 65, Log-Lik: -17576.395, Max-Change: 0.00141Iteration: 66, Log-Lik: -17576.395, Max-Change: 0.00135Iteration: 67, Log-Lik: -17576.394, Max-Change: 0.00053Iteration: 68, Log-Lik: -17576.394, Max-Change: 0.00129Iteration: 69, Log-Lik: -17576.394, Max-Change: 0.00132Iteration: 70, Log-Lik: -17576.394, Max-Change: 0.00049Iteration: 71, Log-Lik: -17576.394, Max-Change: 0.00115Iteration: 72, Log-Lik: -17576.394, Max-Change: 0.00134Iteration: 73, Log-Lik: -17576.393, Max-Change: 0.00049Iteration: 74, Log-Lik: -17576.393, Max-Change: 0.00103Iteration: 75, Log-Lik: -17576.393, Max-Change: 0.00134Iteration: 76, Log-Lik: -17576.393, Max-Change: 0.00048Iteration: 77, Log-Lik: -17576.393, Max-Change: 0.00097Iteration: 78, Log-Lik: -17576.393, Max-Change: 0.00132Iteration: 79, Log-Lik: -17576.392, Max-Change: 0.00047Iteration: 80, Log-Lik: -17576.392, Max-Change: 0.00096Iteration: 81, Log-Lik: -17576.392, Max-Change: 0.00129Iteration: 82, Log-Lik: -17576.392, Max-Change: 0.00046Iteration: 83, Log-Lik: -17576.392, Max-Change: 0.00094Iteration: 84, Log-Lik: -17576.392, Max-Change: 0.00125Iteration: 85, Log-Lik: -17576.392, Max-Change: 0.00044Iteration: 86, Log-Lik: -17576.392, Max-Change: 0.00092Iteration: 87, Log-Lik: -17576.392, Max-Change: 0.00122Iteration: 88, Log-Lik: -17576.392, Max-Change: 0.00043Iteration: 89, Log-Lik: -17576.391, Max-Change: 0.00090Iteration: 90, Log-Lik: -17576.391, Max-Change: 0.00118Iteration: 91, Log-Lik: -17576.391, Max-Change: 0.00042Iteration: 92, Log-Lik: -17576.391, Max-Change: 0.00087Iteration: 93, Log-Lik: -17576.391, Max-Change: 0.00115Iteration: 94, Log-Lik: -17576.391, Max-Change: 0.00041Iteration: 95, Log-Lik: -17576.391, Max-Change: 0.00085Iteration: 96, Log-Lik: -17576.391, Max-Change: 0.00111Iteration: 97, Log-Lik: -17576.391, Max-Change: 0.00039Iteration: 98, Log-Lik: -17576.391, Max-Change: 0.00083Iteration: 99, Log-Lik: -17576.391, Max-Change: 0.00108Iteration: 100, Log-Lik: -17576.390, Max-Change: 0.00038Iteration: 101, Log-Lik: -17576.390, Max-Change: 0.00081Iteration: 102, Log-Lik: -17576.390, Max-Change: 0.00105Iteration: 103, Log-Lik: -17576.390, Max-Change: 0.00037Iteration: 104, Log-Lik: -17576.390, Max-Change: 0.00080Iteration: 105, Log-Lik: -17576.390, Max-Change: 0.00102Iteration: 106, Log-Lik: -17576.390, Max-Change: 0.00036Iteration: 107, Log-Lik: -17576.390, Max-Change: 0.00078Iteration: 108, Log-Lik: -17576.390, Max-Change: 0.00100Iteration: 109, Log-Lik: -17576.390, Max-Change: 0.00035Iteration: 110, Log-Lik: -17576.390, Max-Change: 0.00076Iteration: 111, Log-Lik: -17576.390, Max-Change: 0.00097Iteration: 112, Log-Lik: -17576.390, Max-Change: 0.00035Iteration: 113, Log-Lik: -17576.390, Max-Change: 0.00076Iteration: 114, Log-Lik: -17576.390, Max-Change: 0.00095Iteration: 115, Log-Lik: -17576.390, Max-Change: 0.00034Iteration: 116, Log-Lik: -17576.389, Max-Change: 0.00076Iteration: 117, Log-Lik: -17576.389, Max-Change: 0.00093Iteration: 118, Log-Lik: -17576.389, Max-Change: 0.00033Iteration: 119, Log-Lik: -17576.389, Max-Change: 0.00076Iteration: 120, Log-Lik: -17576.389, Max-Change: 0.00091Iteration: 121, Log-Lik: -17576.389, Max-Change: 0.00032Iteration: 122, Log-Lik: -17576.389, Max-Change: 0.00076Iteration: 123, Log-Lik: -17576.389, Max-Change: 0.00089Iteration: 124, Log-Lik: -17576.389, Max-Change: 0.00032Iteration: 125, Log-Lik: -17576.389, Max-Change: 0.00076Iteration: 126, Log-Lik: -17576.389, Max-Change: 0.00087Iteration: 127, Log-Lik: -17576.389, Max-Change: 0.00031Iteration: 128, Log-Lik: -17576.389, Max-Change: 0.00076Iteration: 129, Log-Lik: -17576.389, Max-Change: 0.00086Iteration: 130, Log-Lik: -17576.389, Max-Change: 0.00030Iteration: 131, Log-Lik: -17576.389, Max-Change: 0.00076Iteration: 132, Log-Lik: -17576.389, Max-Change: 0.00084Iteration: 133, Log-Lik: -17576.389, Max-Change: 0.00030Iteration: 134, Log-Lik: -17576.389, Max-Change: 0.00076Iteration: 135, Log-Lik: -17576.388, Max-Change: 0.00083Iteration: 136, Log-Lik: -17576.388, Max-Change: 0.00029Iteration: 137, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 138, Log-Lik: -17576.388, Max-Change: 0.00081Iteration: 139, Log-Lik: -17576.388, Max-Change: 0.00029Iteration: 140, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 141, Log-Lik: -17576.388, Max-Change: 0.00080Iteration: 142, Log-Lik: -17576.388, Max-Change: 0.00028Iteration: 143, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 144, Log-Lik: -17576.388, Max-Change: 0.00079Iteration: 145, Log-Lik: -17576.388, Max-Change: 0.00028Iteration: 146, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 147, Log-Lik: -17576.388, Max-Change: 0.00077Iteration: 148, Log-Lik: -17576.388, Max-Change: 0.00028Iteration: 149, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 150, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 151, Log-Lik: -17576.388, Max-Change: 0.00027Iteration: 152, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 153, Log-Lik: -17576.388, Max-Change: 0.00075Iteration: 154, Log-Lik: -17576.388, Max-Change: 0.00027Iteration: 155, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 156, Log-Lik: -17576.388, Max-Change: 0.00074Iteration: 157, Log-Lik: -17576.388, Max-Change: 0.00026Iteration: 158, Log-Lik: -17576.388, Max-Change: 0.00076Iteration: 159, Log-Lik: -17576.388, Max-Change: 0.00073Iteration: 160, Log-Lik: -17576.387, Max-Change: 0.00026Iteration: 161, Log-Lik: -17576.387, Max-Change: 0.00076Iteration: 162, Log-Lik: -17576.387, Max-Change: 0.00072Iteration: 163, Log-Lik: -17576.387, Max-Change: 0.00026Iteration: 164, Log-Lik: -17576.387, Max-Change: 0.00076Iteration: 165, Log-Lik: -17576.387, Max-Change: 0.00071Iteration: 166, Log-Lik: -17576.387, Max-Change: 0.00026Iteration: 167, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 168, Log-Lik: -17576.387, Max-Change: 0.00071Iteration: 169, Log-Lik: -17576.387, Max-Change: 0.00025Iteration: 170, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 171, Log-Lik: -17576.387, Max-Change: 0.00070Iteration: 172, Log-Lik: -17576.387, Max-Change: 0.00025Iteration: 173, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 174, Log-Lik: -17576.387, Max-Change: 0.00069Iteration: 175, Log-Lik: -17576.387, Max-Change: 0.00025Iteration: 176, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 177, Log-Lik: -17576.387, Max-Change: 0.00068Iteration: 178, Log-Lik: -17576.387, Max-Change: 0.00024Iteration: 179, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 180, Log-Lik: -17576.387, Max-Change: 0.00067Iteration: 181, Log-Lik: -17576.387, Max-Change: 0.00024Iteration: 182, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 183, Log-Lik: -17576.387, Max-Change: 0.00067Iteration: 184, Log-Lik: -17576.387, Max-Change: 0.00024Iteration: 185, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 186, Log-Lik: -17576.387, Max-Change: 0.00066Iteration: 187, Log-Lik: -17576.387, Max-Change: 0.00024Iteration: 188, Log-Lik: -17576.387, Max-Change: 0.00075Iteration: 189, Log-Lik: -17576.387, Max-Change: 0.00066Iteration: 190, Log-Lik: -17576.386, Max-Change: 0.00023Iteration: 191, Log-Lik: -17576.386, Max-Change: 0.00075Iteration: 192, Log-Lik: -17576.386, Max-Change: 0.00065Iteration: 193, Log-Lik: -17576.386, Max-Change: 0.00023Iteration: 194, Log-Lik: -17576.386, Max-Change: 0.00075Iteration: 195, Log-Lik: -17576.386, Max-Change: 0.00064Iteration: 196, Log-Lik: -17576.386, Max-Change: 0.00023Iteration: 197, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 198, Log-Lik: -17576.386, Max-Change: 0.00064Iteration: 199, Log-Lik: -17576.386, Max-Change: 0.00023Iteration: 200, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 201, Log-Lik: -17576.386, Max-Change: 0.00063Iteration: 202, Log-Lik: -17576.386, Max-Change: 0.00023Iteration: 203, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 204, Log-Lik: -17576.386, Max-Change: 0.00063Iteration: 205, Log-Lik: -17576.386, Max-Change: 0.00022Iteration: 206, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 207, Log-Lik: -17576.386, Max-Change: 0.00062Iteration: 208, Log-Lik: -17576.386, Max-Change: 0.00022Iteration: 209, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 210, Log-Lik: -17576.386, Max-Change: 0.00062Iteration: 211, Log-Lik: -17576.386, Max-Change: 0.00022Iteration: 212, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 213, Log-Lik: -17576.386, Max-Change: 0.00061Iteration: 214, Log-Lik: -17576.386, Max-Change: 0.00022Iteration: 215, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 216, Log-Lik: -17576.386, Max-Change: 0.00061Iteration: 217, Log-Lik: -17576.386, Max-Change: 0.00022Iteration: 218, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 219, Log-Lik: -17576.386, Max-Change: 0.00060Iteration: 220, Log-Lik: -17576.386, Max-Change: 0.00022Iteration: 221, Log-Lik: -17576.386, Max-Change: 0.00074Iteration: 222, Log-Lik: -17576.386, Max-Change: 0.00060Iteration: 223, Log-Lik: -17576.386, Max-Change: 0.00021Iteration: 224, Log-Lik: -17576.386, Max-Change: 0.00073Iteration: 225, Log-Lik: -17576.386, Max-Change: 0.00060Iteration: 226, Log-Lik: -17576.386, Max-Change: 0.00021Iteration: 227, Log-Lik: -17576.386, Max-Change: 0.00073Iteration: 228, Log-Lik: -17576.385, Max-Change: 0.00059Iteration: 229, Log-Lik: -17576.385, Max-Change: 0.00021Iteration: 230, Log-Lik: -17576.385, Max-Change: 0.00073Iteration: 231, Log-Lik: -17576.385, Max-Change: 0.00059Iteration: 232, Log-Lik: -17576.385, Max-Change: 0.00021Iteration: 233, Log-Lik: -17576.385, Max-Change: 0.00073Iteration: 234, Log-Lik: -17576.385, Max-Change: 0.00058Iteration: 235, Log-Lik: -17576.385, Max-Change: 0.00021Iteration: 236, Log-Lik: -17576.385, Max-Change: 0.00073Iteration: 237, Log-Lik: -17576.385, Max-Change: 0.00058Iteration: 238, Log-Lik: -17576.385, Max-Change: 0.00021Iteration: 239, Log-Lik: -17576.385, Max-Change: 0.00073Iteration: 240, Log-Lik: -17576.385, Max-Change: 0.00058Iteration: 241, Log-Lik: -17576.385, Max-Change: 0.00021Iteration: 242, Log-Lik: -17576.385, Max-Change: 0.00073Iteration: 243, Log-Lik: -17576.385, Max-Change: 0.00057Iteration: 244, Log-Lik: -17576.385, Max-Change: 0.00021Iteration: 245, Log-Lik: -17576.385, Max-Change: 0.00072Iteration: 246, Log-Lik: -17576.385, Max-Change: 0.00057Iteration: 247, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 248, Log-Lik: -17576.385, Max-Change: 0.00072Iteration: 249, Log-Lik: -17576.385, Max-Change: 0.00057Iteration: 250, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 251, Log-Lik: -17576.385, Max-Change: 0.00072Iteration: 252, Log-Lik: -17576.385, Max-Change: 0.00056Iteration: 253, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 254, Log-Lik: -17576.385, Max-Change: 0.00072Iteration: 255, Log-Lik: -17576.385, Max-Change: 0.00056Iteration: 256, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 257, Log-Lik: -17576.385, Max-Change: 0.00072Iteration: 258, Log-Lik: -17576.385, Max-Change: 0.00056Iteration: 259, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 260, Log-Lik: -17576.385, Max-Change: 0.00072Iteration: 261, Log-Lik: -17576.385, Max-Change: 0.00056Iteration: 262, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 263, Log-Lik: -17576.385, Max-Change: 0.00072Iteration: 264, Log-Lik: -17576.385, Max-Change: 0.00055Iteration: 265, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 266, Log-Lik: -17576.385, Max-Change: 0.00071Iteration: 267, Log-Lik: -17576.385, Max-Change: 0.00055Iteration: 268, Log-Lik: -17576.385, Max-Change: 0.00020Iteration: 269, Log-Lik: -17576.385, Max-Change: 0.00071Iteration: 270, Log-Lik: -17576.385, Max-Change: 0.00055Iteration: 271, Log-Lik: -17576.384, Max-Change: 0.00020Iteration: 272, Log-Lik: -17576.384, Max-Change: 0.00071Iteration: 273, Log-Lik: -17576.384, Max-Change: 0.00054Iteration: 274, Log-Lik: -17576.384, Max-Change: 0.00020Iteration: 275, Log-Lik: -17576.384, Max-Change: 0.00071Iteration: 276, Log-Lik: -17576.384, Max-Change: 0.00054Iteration: 277, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 278, Log-Lik: -17576.384, Max-Change: 0.00071Iteration: 279, Log-Lik: -17576.384, Max-Change: 0.00054Iteration: 280, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 281, Log-Lik: -17576.384, Max-Change: 0.00071Iteration: 282, Log-Lik: -17576.384, Max-Change: 0.00054Iteration: 283, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 284, Log-Lik: -17576.384, Max-Change: 0.00071Iteration: 285, Log-Lik: -17576.384, Max-Change: 0.00053Iteration: 286, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 287, Log-Lik: -17576.384, Max-Change: 0.00070Iteration: 288, Log-Lik: -17576.384, Max-Change: 0.00053Iteration: 289, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 290, Log-Lik: -17576.384, Max-Change: 0.00070Iteration: 291, Log-Lik: -17576.384, Max-Change: 0.00053Iteration: 292, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 293, Log-Lik: -17576.384, Max-Change: 0.00070Iteration: 294, Log-Lik: -17576.384, Max-Change: 0.00053Iteration: 295, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 296, Log-Lik: -17576.384, Max-Change: 0.00070Iteration: 297, Log-Lik: -17576.384, Max-Change: 0.00053Iteration: 298, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 299, Log-Lik: -17576.384, Max-Change: 0.00070Iteration: 300, Log-Lik: -17576.384, Max-Change: 0.00052Iteration: 301, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 302, Log-Lik: -17576.384, Max-Change: 0.00070Iteration: 303, Log-Lik: -17576.384, Max-Change: 0.00052Iteration: 304, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 305, Log-Lik: -17576.384, Max-Change: 0.00069Iteration: 306, Log-Lik: -17576.384, Max-Change: 0.00052Iteration: 307, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 308, Log-Lik: -17576.384, Max-Change: 0.00069Iteration: 309, Log-Lik: -17576.384, Max-Change: 0.00052Iteration: 310, Log-Lik: -17576.384, Max-Change: 0.00019Iteration: 311, Log-Lik: -17576.384, Max-Change: 0.00069Iteration: 312, Log-Lik: -17576.384, Max-Change: 0.00052Iteration: 313, Log-Lik: -17576.384, Max-Change: 0.00018Iteration: 314, Log-Lik: -17576.384, Max-Change: 0.00069Iteration: 315, Log-Lik: -17576.384, Max-Change: 0.00051Iteration: 316, Log-Lik: -17576.384, Max-Change: 0.00018Iteration: 317, Log-Lik: -17576.384, Max-Change: 0.00069Iteration: 318, Log-Lik: -17576.384, Max-Change: 0.00051Iteration: 319, Log-Lik: -17576.384, Max-Change: 0.00018Iteration: 320, Log-Lik: -17576.384, Max-Change: 0.00069Iteration: 321, Log-Lik: -17576.383, Max-Change: 0.00051Iteration: 322, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 323, Log-Lik: -17576.383, Max-Change: 0.00068Iteration: 324, Log-Lik: -17576.383, Max-Change: 0.00051Iteration: 325, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 326, Log-Lik: -17576.383, Max-Change: 0.00068Iteration: 327, Log-Lik: -17576.383, Max-Change: 0.00051Iteration: 328, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 329, Log-Lik: -17576.383, Max-Change: 0.00068Iteration: 330, Log-Lik: -17576.383, Max-Change: 0.00051Iteration: 331, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 332, Log-Lik: -17576.383, Max-Change: 0.00068Iteration: 333, Log-Lik: -17576.383, Max-Change: 0.00050Iteration: 334, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 335, Log-Lik: -17576.383, Max-Change: 0.00068Iteration: 336, Log-Lik: -17576.383, Max-Change: 0.00050Iteration: 337, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 338, Log-Lik: -17576.383, Max-Change: 0.00068Iteration: 339, Log-Lik: -17576.383, Max-Change: 0.00050Iteration: 340, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 341, Log-Lik: -17576.383, Max-Change: 0.00067Iteration: 342, Log-Lik: -17576.383, Max-Change: 0.00050Iteration: 343, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 344, Log-Lik: -17576.383, Max-Change: 0.00067Iteration: 345, Log-Lik: -17576.383, Max-Change: 0.00050Iteration: 346, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 347, Log-Lik: -17576.383, Max-Change: 0.00067Iteration: 348, Log-Lik: -17576.383, Max-Change: 0.00050Iteration: 349, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 350, Log-Lik: -17576.383, Max-Change: 0.00067Iteration: 351, Log-Lik: -17576.383, Max-Change: 0.00049Iteration: 352, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 353, Log-Lik: -17576.383, Max-Change: 0.00067Iteration: 354, Log-Lik: -17576.383, Max-Change: 0.00049Iteration: 355, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 356, Log-Lik: -17576.383, Max-Change: 0.00067Iteration: 357, Log-Lik: -17576.383, Max-Change: 0.00049Iteration: 358, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 359, Log-Lik: -17576.383, Max-Change: 0.00066Iteration: 360, Log-Lik: -17576.383, Max-Change: 0.00049Iteration: 361, Log-Lik: -17576.383, Max-Change: 0.00018Iteration: 362, Log-Lik: -17576.383, Max-Change: 0.00066Iteration: 363, Log-Lik: -17576.383, Max-Change: 0.00049Iteration: 364, Log-Lik: -17576.383, Max-Change: 0.00017Iteration: 365, Log-Lik: -17576.383, Max-Change: 0.00066Iteration: 366, Log-Lik: -17576.383, Max-Change: 0.00049Iteration: 367, Log-Lik: -17576.383, Max-Change: 0.00017Iteration: 368, Log-Lik: -17576.383, Max-Change: 0.00066Iteration: 369, Log-Lik: -17576.383, Max-Change: 0.00049Iteration: 370, Log-Lik: -17576.383, Max-Change: 0.00017Iteration: 371, Log-Lik: -17576.383, Max-Change: 0.00066Iteration: 372, Log-Lik: -17576.383, Max-Change: 0.00048Iteration: 373, Log-Lik: -17576.383, Max-Change: 0.00017Iteration: 374, Log-Lik: -17576.383, Max-Change: 0.00066Iteration: 375, Log-Lik: -17576.383, Max-Change: 0.00048Iteration: 376, Log-Lik: -17576.383, Max-Change: 0.00017Iteration: 377, Log-Lik: -17576.383, Max-Change: 0.00065Iteration: 378, Log-Lik: -17576.382, Max-Change: 0.00048Iteration: 379, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 380, Log-Lik: -17576.382, Max-Change: 0.00065Iteration: 381, Log-Lik: -17576.382, Max-Change: 0.00048Iteration: 382, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 383, Log-Lik: -17576.382, Max-Change: 0.00065Iteration: 384, Log-Lik: -17576.382, Max-Change: 0.00048Iteration: 385, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 386, Log-Lik: -17576.382, Max-Change: 0.00065Iteration: 387, Log-Lik: -17576.382, Max-Change: 0.00048Iteration: 388, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 389, Log-Lik: -17576.382, Max-Change: 0.00065Iteration: 390, Log-Lik: -17576.382, Max-Change: 0.00048Iteration: 391, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 392, Log-Lik: -17576.382, Max-Change: 0.00065Iteration: 393, Log-Lik: -17576.382, Max-Change: 0.00048Iteration: 394, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 395, Log-Lik: -17576.382, Max-Change: 0.00064Iteration: 396, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 397, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 398, Log-Lik: -17576.382, Max-Change: 0.00064Iteration: 399, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 400, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 401, Log-Lik: -17576.382, Max-Change: 0.00064Iteration: 402, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 403, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 404, Log-Lik: -17576.382, Max-Change: 0.00064Iteration: 405, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 406, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 407, Log-Lik: -17576.382, Max-Change: 0.00064Iteration: 408, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 409, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 410, Log-Lik: -17576.382, Max-Change: 0.00064Iteration: 411, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 412, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 413, Log-Lik: -17576.382, Max-Change: 0.00063Iteration: 414, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 415, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 416, Log-Lik: -17576.382, Max-Change: 0.00063Iteration: 417, Log-Lik: -17576.382, Max-Change: 0.00047Iteration: 418, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 419, Log-Lik: -17576.382, Max-Change: 0.00063Iteration: 420, Log-Lik: -17576.382, Max-Change: 0.00046Iteration: 421, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 422, Log-Lik: -17576.382, Max-Change: 0.00063Iteration: 423, Log-Lik: -17576.382, Max-Change: 0.00046Iteration: 424, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 425, Log-Lik: -17576.382, Max-Change: 0.00063Iteration: 426, Log-Lik: -17576.382, Max-Change: 0.00046Iteration: 427, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 428, Log-Lik: -17576.382, Max-Change: 0.00062Iteration: 429, Log-Lik: -17576.382, Max-Change: 0.00046Iteration: 430, Log-Lik: -17576.382, Max-Change: 0.00017Iteration: 431, Log-Lik: -17576.382, Max-Change: 0.00062Iteration: 432, Log-Lik: -17576.382, Max-Change: 0.00046Iteration: 433, Log-Lik: -17576.382, Max-Change: 0.00016Iteration: 434, Log-Lik: -17576.382, Max-Change: 0.00062Iteration: 435, Log-Lik: -17576.382, Max-Change: 0.00046Iteration: 436, Log-Lik: -17576.382, Max-Change: 0.00016Iteration: 437, Log-Lik: -17576.382, Max-Change: 0.00062Iteration: 438, Log-Lik: -17576.382, Max-Change: 0.00046Iteration: 439, Log-Lik: -17576.382, Max-Change: 0.00016Iteration: 440, Log-Lik: -17576.382, Max-Change: 0.00062Iteration: 441, Log-Lik: -17576.381, Max-Change: 0.00046Iteration: 442, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 443, Log-Lik: -17576.381, Max-Change: 0.00062Iteration: 444, Log-Lik: -17576.381, Max-Change: 0.00046Iteration: 445, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 446, Log-Lik: -17576.381, Max-Change: 0.00061Iteration: 447, Log-Lik: -17576.381, Max-Change: 0.00046Iteration: 448, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 449, Log-Lik: -17576.381, Max-Change: 0.00061Iteration: 450, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 451, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 452, Log-Lik: -17576.381, Max-Change: 0.00061Iteration: 453, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 454, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 455, Log-Lik: -17576.381, Max-Change: 0.00061Iteration: 456, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 457, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 458, Log-Lik: -17576.381, Max-Change: 0.00061Iteration: 459, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 460, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 461, Log-Lik: -17576.381, Max-Change: 0.00061Iteration: 462, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 463, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 464, Log-Lik: -17576.381, Max-Change: 0.00060Iteration: 465, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 466, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 467, Log-Lik: -17576.381, Max-Change: 0.00060Iteration: 468, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 469, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 470, Log-Lik: -17576.381, Max-Change: 0.00060Iteration: 471, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 472, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 473, Log-Lik: -17576.381, Max-Change: 0.00060Iteration: 474, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 475, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 476, Log-Lik: -17576.381, Max-Change: 0.00060Iteration: 477, Log-Lik: -17576.381, Max-Change: 0.00045Iteration: 478, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 479, Log-Lik: -17576.381, Max-Change: 0.00059Iteration: 480, Log-Lik: -17576.381, Max-Change: 0.00044Iteration: 481, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 482, Log-Lik: -17576.381, Max-Change: 0.00059Iteration: 483, Log-Lik: -17576.381, Max-Change: 0.00044Iteration: 484, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 485, Log-Lik: -17576.381, Max-Change: 0.00059Iteration: 486, Log-Lik: -17576.381, Max-Change: 0.00044Iteration: 487, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 488, Log-Lik: -17576.381, Max-Change: 0.00059Iteration: 489, Log-Lik: -17576.381, Max-Change: 0.00044Iteration: 490, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 491, Log-Lik: -17576.381, Max-Change: 0.00059Iteration: 492, Log-Lik: -17576.381, Max-Change: 0.00044Iteration: 493, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 494, Log-Lik: -17576.381, Max-Change: 0.00059Iteration: 495, Log-Lik: -17576.381, Max-Change: 0.00044Iteration: 496, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 497, Log-Lik: -17576.381, Max-Change: 0.00059Iteration: 498, Log-Lik: -17576.381, Max-Change: 0.00044Iteration: 499, Log-Lik: -17576.381, Max-Change: 0.00016Iteration: 500, Log-Lik: -17576.381, Max-Change: 0.00059
## Warning: EM cycles terminated after 500 iterations.
## 
## 
## Calculating information matrix...
# Model 4PL
mod_4pl <- mirt(datasampel, 1, itemtype = "4PL", SE = TRUE)
## Iteration: 1, Log-Lik: -19196.843, Max-Change: 6.64923Iteration: 2, Log-Lik: -17930.852, Max-Change: 3.29767Iteration: 3, Log-Lik: -17731.804, Max-Change: 1.56366Iteration: 4, Log-Lik: -17655.953, Max-Change: 1.09116Iteration: 5, Log-Lik: -17616.868, Max-Change: 0.79950Iteration: 6, Log-Lik: -17597.885, Max-Change: 0.68059Iteration: 7, Log-Lik: -17585.660, Max-Change: 0.57618Iteration: 8, Log-Lik: -17577.867, Max-Change: 0.37168Iteration: 9, Log-Lik: -17573.308, Max-Change: 0.36597Iteration: 10, Log-Lik: -17569.113, Max-Change: 0.46018Iteration: 11, Log-Lik: -17566.907, Max-Change: 1.16478Iteration: 12, Log-Lik: -17565.867, Max-Change: 0.54328Iteration: 13, Log-Lik: -17565.319, Max-Change: 0.26747Iteration: 14, Log-Lik: -17564.921, Max-Change: 0.30400Iteration: 15, Log-Lik: -17564.548, Max-Change: 0.14778Iteration: 16, Log-Lik: -17564.487, Max-Change: 1.05557Iteration: 17, Log-Lik: -17564.079, Max-Change: 0.13644Iteration: 18, Log-Lik: -17563.931, Max-Change: 0.07217Iteration: 19, Log-Lik: -17563.814, Max-Change: 0.03506Iteration: 20, Log-Lik: -17563.749, Max-Change: 0.04457Iteration: 21, Log-Lik: -17563.679, Max-Change: 0.04055Iteration: 22, Log-Lik: -17563.536, Max-Change: 0.02132Iteration: 23, Log-Lik: -17563.494, Max-Change: 0.01108Iteration: 24, Log-Lik: -17563.453, Max-Change: 0.01003Iteration: 25, Log-Lik: -17563.322, Max-Change: 0.00797Iteration: 26, Log-Lik: -17563.300, Max-Change: 0.00624Iteration: 27, Log-Lik: -17563.279, Max-Change: 0.00672Iteration: 28, Log-Lik: -17563.182, Max-Change: 0.00883Iteration: 29, Log-Lik: -17563.170, Max-Change: 0.00348Iteration: 30, Log-Lik: -17563.162, Max-Change: 0.00554Iteration: 31, Log-Lik: -17563.145, Max-Change: 0.00590Iteration: 32, Log-Lik: -17563.133, Max-Change: 0.00440Iteration: 33, Log-Lik: -17563.127, Max-Change: 0.00592Iteration: 34, Log-Lik: -17563.111, Max-Change: 0.00268Iteration: 35, Log-Lik: -17563.102, Max-Change: 0.00348Iteration: 36, Log-Lik: -17563.099, Max-Change: 0.00472Iteration: 37, Log-Lik: -17563.091, Max-Change: 0.00283Iteration: 38, Log-Lik: -17563.086, Max-Change: 0.00145Iteration: 39, Log-Lik: -17563.083, Max-Change: 0.00356Iteration: 40, Log-Lik: -17563.080, Max-Change: 0.00340Iteration: 41, Log-Lik: -17563.076, Max-Change: 0.00225Iteration: 42, Log-Lik: -17563.074, Max-Change: 0.00145Iteration: 43, Log-Lik: -17563.071, Max-Change: 0.00220Iteration: 44, Log-Lik: -17563.069, Max-Change: 0.00306Iteration: 45, Log-Lik: -17563.067, Max-Change: 0.00122Iteration: 46, Log-Lik: -17563.066, Max-Change: 0.00143Iteration: 47, Log-Lik: -17563.064, Max-Change: 0.00339Iteration: 48, Log-Lik: -17563.062, Max-Change: 0.00112Iteration: 49, Log-Lik: -17563.061, Max-Change: 0.00126Iteration: 50, Log-Lik: -17563.060, Max-Change: 0.00307Iteration: 51, Log-Lik: -17563.059, Max-Change: 0.00225Iteration: 52, Log-Lik: -17563.055, Max-Change: 0.00311Iteration: 53, Log-Lik: -17563.054, Max-Change: 0.00219Iteration: 54, Log-Lik: -17563.052, Max-Change: 0.00477Iteration: 55, Log-Lik: -17563.050, Max-Change: 0.00108Iteration: 56, Log-Lik: -17563.049, Max-Change: 0.00119Iteration: 57, Log-Lik: -17563.048, Max-Change: 0.00130Iteration: 58, Log-Lik: -17563.047, Max-Change: 0.00206Iteration: 59, Log-Lik: -17563.046, Max-Change: 0.00164Iteration: 60, Log-Lik: -17563.045, Max-Change: 0.00038Iteration: 61, Log-Lik: -17563.045, Max-Change: 0.00034Iteration: 62, Log-Lik: -17563.045, Max-Change: 0.00144Iteration: 63, Log-Lik: -17563.044, Max-Change: 0.00032Iteration: 64, Log-Lik: -17563.044, Max-Change: 0.00144Iteration: 65, Log-Lik: -17563.044, Max-Change: 0.00181Iteration: 66, Log-Lik: -17563.043, Max-Change: 0.00035Iteration: 67, Log-Lik: -17563.043, Max-Change: 0.00029Iteration: 68, Log-Lik: -17563.043, Max-Change: 0.00115Iteration: 69, Log-Lik: -17563.042, Max-Change: 0.00050Iteration: 70, Log-Lik: -17563.042, Max-Change: 0.00030Iteration: 71, Log-Lik: -17563.042, Max-Change: 0.00114Iteration: 72, Log-Lik: -17563.042, Max-Change: 0.00054Iteration: 73, Log-Lik: -17563.042, Max-Change: 0.00031Iteration: 74, Log-Lik: -17563.042, Max-Change: 0.00101Iteration: 75, Log-Lik: -17563.041, Max-Change: 0.00060Iteration: 76, Log-Lik: -17563.041, Max-Change: 0.00034Iteration: 77, Log-Lik: -17563.041, Max-Change: 0.00094Iteration: 78, Log-Lik: -17563.041, Max-Change: 0.00063Iteration: 79, Log-Lik: -17563.041, Max-Change: 0.00035Iteration: 80, Log-Lik: -17563.041, Max-Change: 0.00085Iteration: 81, Log-Lik: -17563.041, Max-Change: 0.00066Iteration: 82, Log-Lik: -17563.041, Max-Change: 0.00036Iteration: 83, Log-Lik: -17563.041, Max-Change: 0.00081Iteration: 84, Log-Lik: -17563.040, Max-Change: 0.00066Iteration: 85, Log-Lik: -17563.040, Max-Change: 0.00035Iteration: 86, Log-Lik: -17563.040, Max-Change: 0.00075Iteration: 87, Log-Lik: -17563.040, Max-Change: 0.00066Iteration: 88, Log-Lik: -17563.040, Max-Change: 0.00035Iteration: 89, Log-Lik: -17563.040, Max-Change: 0.00071Iteration: 90, Log-Lik: -17563.040, Max-Change: 0.00065Iteration: 91, Log-Lik: -17563.040, Max-Change: 0.00034Iteration: 92, Log-Lik: -17563.040, Max-Change: 0.00069Iteration: 93, Log-Lik: -17563.039, Max-Change: 0.00063Iteration: 94, Log-Lik: -17563.039, Max-Change: 0.00033Iteration: 95, Log-Lik: -17563.039, Max-Change: 0.00067Iteration: 96, Log-Lik: -17563.039, Max-Change: 0.00062Iteration: 97, Log-Lik: -17563.039, Max-Change: 0.00032Iteration: 98, Log-Lik: -17563.039, Max-Change: 0.00066Iteration: 99, Log-Lik: -17563.039, Max-Change: 0.00060Iteration: 100, Log-Lik: -17563.039, Max-Change: 0.00031Iteration: 101, Log-Lik: -17563.039, Max-Change: 0.00064Iteration: 102, Log-Lik: -17563.039, Max-Change: 0.00058Iteration: 103, Log-Lik: -17563.039, Max-Change: 0.00030Iteration: 104, Log-Lik: -17563.039, Max-Change: 0.00062Iteration: 105, Log-Lik: -17563.038, Max-Change: 0.00056Iteration: 106, Log-Lik: -17563.038, Max-Change: 0.00029Iteration: 107, Log-Lik: -17563.038, Max-Change: 0.00061Iteration: 108, Log-Lik: -17563.038, Max-Change: 0.00055Iteration: 109, Log-Lik: -17563.038, Max-Change: 0.00028Iteration: 110, Log-Lik: -17563.038, Max-Change: 0.00059Iteration: 111, Log-Lik: -17563.038, Max-Change: 0.00053Iteration: 112, Log-Lik: -17563.038, Max-Change: 0.00028Iteration: 113, Log-Lik: -17563.038, Max-Change: 0.00058Iteration: 114, Log-Lik: -17563.038, Max-Change: 0.00052Iteration: 115, Log-Lik: -17563.038, Max-Change: 0.00027Iteration: 116, Log-Lik: -17563.038, Max-Change: 0.00057Iteration: 117, Log-Lik: -17563.038, Max-Change: 0.00051Iteration: 118, Log-Lik: -17563.038, Max-Change: 0.00026Iteration: 119, Log-Lik: -17563.038, Max-Change: 0.00055Iteration: 120, Log-Lik: -17563.037, Max-Change: 0.00049Iteration: 121, Log-Lik: -17563.037, Max-Change: 0.00026Iteration: 122, Log-Lik: -17563.037, Max-Change: 0.00054Iteration: 123, Log-Lik: -17563.037, Max-Change: 0.00048Iteration: 124, Log-Lik: -17563.037, Max-Change: 0.00025Iteration: 125, Log-Lik: -17563.037, Max-Change: 0.00053Iteration: 126, Log-Lik: -17563.037, Max-Change: 0.00047Iteration: 127, Log-Lik: -17563.037, Max-Change: 0.00025Iteration: 128, Log-Lik: -17563.037, Max-Change: 0.00052Iteration: 129, Log-Lik: -17563.037, Max-Change: 0.00046Iteration: 130, Log-Lik: -17563.037, Max-Change: 0.00024Iteration: 131, Log-Lik: -17563.037, Max-Change: 0.00052Iteration: 132, Log-Lik: -17563.037, Max-Change: 0.00046Iteration: 133, Log-Lik: -17563.037, Max-Change: 0.00024Iteration: 134, Log-Lik: -17563.037, Max-Change: 0.00051Iteration: 135, Log-Lik: -17563.037, Max-Change: 0.00045Iteration: 136, Log-Lik: -17563.037, Max-Change: 0.00023Iteration: 137, Log-Lik: -17563.037, Max-Change: 0.00051Iteration: 138, Log-Lik: -17563.037, Max-Change: 0.00044Iteration: 139, Log-Lik: -17563.037, Max-Change: 0.00023Iteration: 140, Log-Lik: -17563.037, Max-Change: 0.00050Iteration: 141, Log-Lik: -17563.036, Max-Change: 0.00043Iteration: 142, Log-Lik: -17563.036, Max-Change: 0.00023Iteration: 143, Log-Lik: -17563.036, Max-Change: 0.00050Iteration: 144, Log-Lik: -17563.036, Max-Change: 0.00043Iteration: 145, Log-Lik: -17563.036, Max-Change: 0.00022
## 
## Calculating information matrix...
# Uji Kecocokan Item (Item Fit) dan Tabel Keputusan

# Rasch
fit_rasch <- itemfit(mod_rasch, fit_stats = "S_X2")
fit_rasch_df <- data.frame(
  Butir = fit_rasch$item,
  Chi = round(fit_rasch$S_X2, 2),
  pvalue = round(fit_rasch$p.S_X2, 2),
  Keputusan = ifelse(fit_rasch$p.S_X2 >= 0.05, "Cocok", "Tidak Cocok")
)
print(fit_rasch_df)
##    Butir    Chi pvalue   Keputusan
## 1     b1  33.91   0.17       Cocok
## 2     b2  87.63   0.00 Tidak Cocok
## 3     b3  57.87   0.00 Tidak Cocok
## 4     b4  28.84   0.37       Cocok
## 5     b5  27.40   0.44       Cocok
## 6     b6  47.20   0.01 Tidak Cocok
## 7     b7  18.93   0.87       Cocok
## 8     b8  31.94   0.23       Cocok
## 9     b9  38.64   0.07       Cocok
## 10   b10  58.44   0.00 Tidak Cocok
## 11   b11  31.44   0.25       Cocok
## 12   b12  63.16   0.00 Tidak Cocok
## 13   b13  42.13   0.04 Tidak Cocok
## 14   b14  58.67   0.00 Tidak Cocok
## 15   b15 175.26   0.00 Tidak Cocok
## 16   b16  77.00   0.00 Tidak Cocok
## 17   b17  43.33   0.02 Tidak Cocok
## 18   b18  63.86   0.00 Tidak Cocok
## 19   b19  45.37   0.01 Tidak Cocok
## 20   b20  40.24   0.05 Tidak Cocok
## 21   b21 117.69   0.00 Tidak Cocok
## 22   b22  51.49   0.00 Tidak Cocok
## 23   b23  66.19   0.00 Tidak Cocok
## 24   b24  59.48   0.00 Tidak Cocok
## 25   b25  24.23   0.56       Cocok
## 26   b26  40.00   0.07       Cocok
## 27   b27  40.88   0.04 Tidak Cocok
## 28   b28  34.47   0.19       Cocok
## 29   b29  28.89   0.07       Cocok
## 30   b30  29.90   0.32       Cocok
## 31   b31  32.60   0.21       Cocok
## 32   b32  18.84   0.90       Cocok
## 33   b33  17.44   0.90       Cocok
## 34   b34 168.59   0.00 Tidak Cocok
## 35   b35  54.82   0.00 Tidak Cocok
## 36   b36  35.91   0.12       Cocok
## 37   b37  63.42   0.00 Tidak Cocok
cat("Jumlah butir cocok/tidak cocok model Rasch:\n")
## Jumlah butir cocok/tidak cocok model Rasch:
print(table(fit_rasch_df$Keputusan))
## 
##       Cocok Tidak Cocok 
##          16          21
# Model 1PL
fit_1PL <- itemfit(mod_1pl, fit_stats = "S_X2")
fit_1PL_df <- data.frame(
  Butir = fit_1PL$item,
  Chi = round(fit_1PL$S_X2, 2),
  pvalue = round(fit_1PL$p.S_X2, 2),
  Keputusan = ifelse(fit_1PL$p.S_X2 >= 0.05, "Cocok", "Tidak Cocok")
)
print(fit_1PL_df)
##    Butir    Chi pvalue   Keputusan
## 1     b1  33.91   0.17       Cocok
## 2     b2  87.63   0.00 Tidak Cocok
## 3     b3  57.87   0.00 Tidak Cocok
## 4     b4  28.84   0.37       Cocok
## 5     b5  27.40   0.44       Cocok
## 6     b6  47.20   0.01 Tidak Cocok
## 7     b7  18.93   0.87       Cocok
## 8     b8  31.94   0.23       Cocok
## 9     b9  38.64   0.07       Cocok
## 10   b10  58.44   0.00 Tidak Cocok
## 11   b11  31.44   0.25       Cocok
## 12   b12  63.16   0.00 Tidak Cocok
## 13   b13  42.13   0.04 Tidak Cocok
## 14   b14  58.67   0.00 Tidak Cocok
## 15   b15 175.26   0.00 Tidak Cocok
## 16   b16  77.00   0.00 Tidak Cocok
## 17   b17  43.34   0.02 Tidak Cocok
## 18   b18  63.87   0.00 Tidak Cocok
## 19   b19  45.37   0.01 Tidak Cocok
## 20   b20  40.24   0.05 Tidak Cocok
## 21   b21 117.70   0.00 Tidak Cocok
## 22   b22  51.49   0.00 Tidak Cocok
## 23   b23  66.20   0.00 Tidak Cocok
## 24   b24  59.48   0.00 Tidak Cocok
## 25   b25  24.23   0.56       Cocok
## 26   b26  40.00   0.07       Cocok
## 27   b27  40.87   0.04 Tidak Cocok
## 28   b28  34.47   0.19       Cocok
## 29   b29  28.90   0.07       Cocok
## 30   b30  29.90   0.32       Cocok
## 31   b31  32.60   0.21       Cocok
## 32   b32  18.84   0.90       Cocok
## 33   b33  17.44   0.90       Cocok
## 34   b34 168.60   0.00 Tidak Cocok
## 35   b35  54.83   0.00 Tidak Cocok
## 36   b36  35.91   0.12       Cocok
## 37   b37  63.42   0.00 Tidak Cocok
cat("Jumlah butir cocok/tidak cocok model 1PL:\n")
## Jumlah butir cocok/tidak cocok model 1PL:
print(table(fit_1PL_df$Keputusan))
## 
##       Cocok Tidak Cocok 
##          16          21
# Model 2PL
fit_2PL <- itemfit(mod_2pl, fit_stats = "S_X2")
fit_2PL_df <- data.frame(
  Butir = fit_2PL$item,
  Chi = round(fit_2PL$S_X2, 2),
  pvalue = round(fit_2PL$p.S_X2, 2),
  Keputusan = ifelse(fit_2PL$p.S_X2 >= 0.05, "Cocok", "Tidak Cocok")
)
print(fit_2PL_df)
##    Butir   Chi pvalue   Keputusan
## 1     b1 30.10   0.22       Cocok
## 2     b2 25.25   0.67       Cocok
## 3     b3 21.35   0.38       Cocok
## 4     b4 19.26   0.78       Cocok
## 5     b5 12.81   0.98       Cocok
## 6     b6 39.29   0.05 Tidak Cocok
## 7     b7 12.29   0.98       Cocok
## 8     b8 25.20   0.51       Cocok
## 9     b9 27.41   0.29       Cocok
## 10   b10 46.48   0.01 Tidak Cocok
## 11   b11 27.03   0.41       Cocok
## 12   b12 46.60   0.01 Tidak Cocok
## 13   b13 41.75   0.03 Tidak Cocok
## 14   b14 39.00   0.03 Tidak Cocok
## 15   b15 25.68   0.64       Cocok
## 16   b16 27.10   0.51       Cocok
## 17   b17 23.39   0.71       Cocok
## 18   b18 44.67   0.02 Tidak Cocok
## 19   b19 26.85   0.26       Cocok
## 20   b20 30.77   0.33       Cocok
## 21   b21 28.00   0.52       Cocok
## 22   b22 51.36   0.00 Tidak Cocok
## 23   b23 50.53   0.01 Tidak Cocok
## 24   b24 49.45   0.00 Tidak Cocok
## 25   b25 23.15   0.62       Cocok
## 26   b26 33.78   0.17       Cocok
## 27   b27 22.27   0.56       Cocok
## 28   b28 28.26   0.35       Cocok
## 29   b29 33.12   0.03 Tidak Cocok
## 30   b30 20.73   0.65       Cocok
## 31   b31 28.62   0.38       Cocok
## 32   b32 14.03   0.97       Cocok
## 33   b33 16.91   0.91       Cocok
## 34   b34 32.50   0.30       Cocok
## 35   b35 27.90   0.52       Cocok
## 36   b36 30.62   0.17       Cocok
## 37   b37 51.35   0.00 Tidak Cocok
cat("Jumlah butir cocok/tidak cocok model 2PL:\n")
## Jumlah butir cocok/tidak cocok model 2PL:
print(table(fit_2PL_df$Keputusan))
## 
##       Cocok Tidak Cocok 
##          26          11
# Model 3PL
fit_3PL <- itemfit(mod_3pl, fit_stats = "S_X2")
fit_3PL_df <- data.frame(
  Butir = fit_3PL$item,
  Chi = round(fit_3PL$S_X2, 2),
  pvalue = round(fit_3PL$p.S_X2, 2),
  Keputusan = ifelse(fit_3PL$p.S_X2 >= 0.05, "Cocok", "Tidak Cocok")
)
print(fit_3PL_df)
##    Butir   Chi pvalue   Keputusan
## 1     b1 30.48   0.21       Cocok
## 2     b2 17.65   0.89       Cocok
## 3     b3 23.22   0.28       Cocok
## 4     b4 20.05   0.74       Cocok
## 5     b5 15.62   0.93       Cocok
## 6     b6 32.94   0.11       Cocok
## 7     b7 11.05   0.99       Cocok
## 8     b8 20.54   0.61       Cocok
## 9     b9 29.96   0.19       Cocok
## 10   b10 42.36   0.02 Tidak Cocok
## 11   b11 21.16   0.63       Cocok
## 12   b12 23.35   0.44       Cocok
## 13   b13 29.43   0.25       Cocok
## 14   b14 22.52   0.37       Cocok
## 15   b15 21.31   0.81       Cocok
## 16   b16 14.80   0.96       Cocok
## 17   b17 21.11   0.78       Cocok
## 18   b18 41.88   0.03 Tidak Cocok
## 19   b19 21.81   0.47       Cocok
## 20   b20 26.90   0.47       Cocok
## 21   b21 18.85   0.90       Cocok
## 22   b22 43.52   0.02 Tidak Cocok
## 23   b23 35.75   0.10       Cocok
## 24   b24 37.67   0.03 Tidak Cocok
## 25   b25 22.99   0.58       Cocok
## 26   b26 29.76   0.28       Cocok
## 27   b27 20.09   0.69       Cocok
## 28   b28 26.64   0.37       Cocok
## 29   b29 28.31   0.08       Cocok
## 30   b30 17.14   0.76       Cocok
## 31   b31 19.30   0.78       Cocok
## 32   b32 15.91   0.94       Cocok
## 33   b33 13.85   0.97       Cocok
## 34   b34 25.81   0.58       Cocok
## 35   b35 26.71   0.53       Cocok
## 36   b36 20.58   0.66       Cocok
## 37   b37 34.00   0.20       Cocok
cat("Jumlah butir cocok/tidak cocok model 3PL:\n")
## Jumlah butir cocok/tidak cocok model 3PL:
print(table(fit_3PL_df$Keputusan))
## 
##       Cocok Tidak Cocok 
##          33           4
# Model 4PL
fit_4PL <- itemfit(mod_4pl, fit_stats = "S_X2")
fit_4PL_df <- data.frame(
  Butir = fit_4PL$item,
  Chi = round(fit_4PL$S_X2, 2),
  pvalue = round(fit_4PL$p.S_X2, 2),
  Keputusan = ifelse(fit_4PL$p.S_X2 >= 0.05, "Cocok", "Tidak Cocok")
)
print(fit_4PL_df)
##    Butir   Chi pvalue   Keputusan
## 1     b1 27.30   0.29       Cocok
## 2     b2 17.23   0.87       Cocok
## 3     b3 22.69   0.25       Cocok
## 4     b4 19.28   0.74       Cocok
## 5     b5 13.05   0.95       Cocok
## 6     b6 32.85   0.08       Cocok
## 7     b7 10.99   0.98       Cocok
## 8     b8 20.10   0.58       Cocok
## 9     b9 28.95   0.18       Cocok
## 10   b10 40.29   0.03 Tidak Cocok
## 11   b11 20.18   0.69       Cocok
## 12   b12 23.46   0.38       Cocok
## 13   b13 29.90   0.19       Cocok
## 14   b14 20.38   0.50       Cocok
## 15   b15 21.91   0.74       Cocok
## 16   b16 15.76   0.92       Cocok
## 17   b17 21.70   0.70       Cocok
## 18   b18 36.64   0.08       Cocok
## 19   b19 20.61   0.42       Cocok
## 20   b20 26.45   0.44       Cocok
## 21   b21 20.35   0.82       Cocok
## 22   b22 42.99   0.01 Tidak Cocok
## 23   b23 35.83   0.07       Cocok
## 24   b24 36.67   0.06       Cocok
## 25   b25 22.46   0.55       Cocok
## 26   b26 29.51   0.20       Cocok
## 27   b27 19.55   0.67       Cocok
## 28   b28 25.98   0.35       Cocok
## 29   b29 27.96   0.06       Cocok
## 30   b30 18.75   0.66       Cocok
## 31   b31 18.72   0.77       Cocok
## 32   b32 14.95   0.94       Cocok
## 33   b33 13.50   0.98       Cocok
## 34   b34 25.66   0.54       Cocok
## 35   b35 26.07   0.46       Cocok
## 36   b36 19.88   0.65       Cocok
## 37   b37 32.25   0.22       Cocok
cat("Jumlah butir cocok/tidak cocok model 4PL:\n")
## Jumlah butir cocok/tidak cocok model 4PL:
print(table(fit_4PL_df$Keputusan))
## 
##       Cocok Tidak Cocok 
##          35           2
# Plot Empirical untuk Butir ke-9 pada Setiap Model
itemfit(mod_rasch, 'S_X2', empirical.plot = 9)

itemfit(mod_1pl, 'S_X2', empirical.plot = 9)

itemfit(mod_2pl, 'S_X2', empirical.plot = 9)

itemfit(mod_3pl, 'S_X2', empirical.plot = 9)

itemfit(mod_4pl, 'S_X2', empirical.plot = 9)

# Visualisasi Plot Semua Butir 
for (coba in 1:nrow(fit_rasch_df)) {
print(itemfit(mod_rasch, 'S_X2', empirical.plot = coba))
}

# Step 6: Uji Kecocokan Model dengan ANOVA (AIC, BIC)
anova(mod_rasch, mod_1pl)
##                AIC    SABIC       HQ      BIC    logLik     X2 df   p
## mod_rasch 36416.93 36478.74 36486.64 36599.42 -18170.47              
## mod_1pl   36416.93 36478.74 36486.65 36599.43 -18170.47 -0.002  0 NaN
anova(mod_1pl, mod_2pl)
##              AIC    SABIC       HQ      BIC    logLik      X2 df p
## mod_1pl 36416.93 36478.74 36486.65 36599.43 -18170.47             
## mod_2pl 35775.29 35895.65 35911.04 36130.66 -17813.64 713.647 36 0
anova(mod_2pl, mod_3pl)
##              AIC    SABIC       HQ      BIC    logLik      X2 df p
## mod_2pl 35775.29 35895.65 35911.04 36130.66 -17813.64             
## mod_3pl 35374.76 35555.31 35578.40 35907.83 -17576.38 474.526 37 0
anova(mod_3pl, mod_4pl)
##              AIC    SABIC       HQ      BIC    logLik     X2 df     p
## mod_3pl 35374.76 35555.31 35578.40 35907.83 -17576.38                
## mod_4pl 35422.07 35662.80 35693.59 36132.83 -17563.04 26.689 37 0.895
library(mirt)

# Model null (baseline): item independen, satu iterasi
mod_null <- mirt(datasampel, 1, itemtype = 'Rasch', technical = list(NCYCLES = 1), SE = FALSE)
## Iteration: 1, Log-Lik: -18234.057, Max-Change: 0.44424
## Warning: EM cycles terminated after 1 iterations.
logLik_null <- as.numeric(logLik(mod_null))

# Log-likelihood tiap model
logLik_rasch <- as.numeric(logLik(mod_rasch))
logLik_1pl <- as.numeric(logLik(mod_1pl))
logLik_2pl <- as.numeric(logLik(mod_2pl))
logLik_3pl <- as.numeric(logLik(mod_3pl))
logLik_4pl <- as.numeric(logLik(mod_4pl))

# Fungsi NFI
nfi <- function(logLik_null, logLik_model) {
  return((logLik_null - logLik_model) / logLik_null)
}

# Hitung NFI masing-masing
nfi_rasch <- nfi(logLik_null, logLik_rasch)
nfi_1pl <- nfi(logLik_null, logLik_1pl)
nfi_2pl <- nfi(logLik_null, logLik_2pl)
nfi_3pl <- nfi(logLik_null, logLik_3pl)
nfi_4pl <- nfi(logLik_null, logLik_4pl)

# Hitung AIC dan BIC via anova
anova_rasch_1pl <- anova(mod_rasch, mod_1pl)
anova_1pl_2pl <- anova(mod_1pl, mod_2pl)
anova_2pl_3pl <- anova(mod_2pl, mod_3pl)
anova_3pl_4pl <- anova(mod_3pl, mod_4pl)

get_anova_ic <- function(anova_res, idx = 1) {
  list(AIC = anova_res$AIC[idx], BIC = anova_res$BIC[idx])
}

AIC_rasch <- get_anova_ic(anova_rasch_1pl, 1)$AIC
BIC_rasch <- get_anova_ic(anova_rasch_1pl, 1)$BIC
AIC_1pl <- get_anova_ic(anova_rasch_1pl, 2)$AIC
BIC_1pl <- get_anova_ic(anova_rasch_1pl, 2)$BIC
AIC_2pl <- get_anova_ic(anova_1pl_2pl, 2)$AIC
BIC_2pl <- get_anova_ic(anova_1pl_2pl, 2)$BIC
AIC_3pl <- get_anova_ic(anova_2pl_3pl, 2)$AIC
BIC_3pl <- get_anova_ic(anova_2pl_3pl, 2)$BIC
AIC_4pl <- get_anova_ic(anova_3pl_4pl, 2)$AIC
BIC_4pl <- get_anova_ic(anova_3pl_4pl, 2)$BIC

# Fungsi jumlah cocok/tidak cocok
count_fit <- function(df) {
  cocok <- sum(df$Keputusan == "Cocok", na.rm = TRUE)
  tidak <- sum(df$Keputusan == "Tidak Cocok", na.rm = TRUE)
  na    <- sum(is.na(df$Keputusan))
  return(c(cocok, tidak, na))
}

fit_counts <- rbind(
  count_fit(fit_rasch_df),
  count_fit(fit_1PL_df),
  count_fit(fit_2PL_df),
  count_fit(fit_3PL_df),
  count_fit(fit_4PL_df)
)

# Rekapitulasi
n_sampel <- nrow(datasampel)
n_item <- ncol(datasampel)

rekap_model <- data.frame(
  Model = c("Rasch", "1PL", "2PL", "3PL", "4PL"),
  n = rep(n_sampel, 5),
  AIC = c(AIC_rasch, AIC_1pl, AIC_2pl, AIC_3pl, AIC_4pl),
  BIC = c(BIC_rasch, BIC_1pl, BIC_2pl, BIC_3pl, BIC_4pl),
  Butir_Cocok = fit_counts[,1],
  Butir_Tidak_Cocok = fit_counts[,2],
  Butir_NA = fit_counts[,3],
  Jumlah_Variabel = rep(n_item, 5),
  NFI_maks = round(c(nfi_rasch, nfi_1pl, nfi_2pl, nfi_3pl, nfi_4pl), 4)
)

print(rekap_model)
##   Model   n      AIC      BIC Butir_Cocok Butir_Tidak_Cocok Butir_NA
## 1 Rasch 900 36416.93 36599.42          16                21        0
## 2   1PL 900 36416.93 36599.43          16                21        0
## 3   2PL 900 35775.29 36130.66          26                11        0
## 4   3PL 900 35374.76 35907.83          33                 4        0
## 5   4PL 900 35422.07 36132.83          35                 2        0
##   Jumlah_Variabel NFI_maks
## 1              37   0.0006
## 2              37   0.0006
## 3              37   0.0202
## 4              37   0.0333
## 5              37   0.0340