# NOT RUN {
y <- nes_econ2008[, -(1:3)]
x <- model.matrix( ~ party * educ, nes_econ2008)
z <- model.matrix( ~ party, nes_econ2008)
dichotomize <- function(x) findInterval(x, c(mean(x, na.rm = TRUE)))
y_bin <- y
y_bin[] <- lapply(y, dichotomize)
n <- nrow(nes_econ2008)
id_train <- sample.int(n, n/4)
id_test <- setdiff(1:n, id_train)
y_bin_train <- y_bin[id_train, ]
x_train <- x[id_train, ]
z_train <- z[id_train, ]
mod_train <- hltm(y_bin_train, x_train, z_train)
y_bin_test <- y_bin[id_test, ]
x_test <- x[id_test, ]
z_test <- z[id_test, ]
item_coefs <- lapply(coef_item(mod_train), `[[`, "Estimate")
model_test <- hltm2(y_bin_test, x_test, z_test, item_coefs = item_coefs)
# }
Run the code above in your browser using DataLab