View source: R/summary_irt_results.R
| summary.irt_results | R Documentation |
Compute performance criteria for each sample size, item, and parameter
combination from an irt_simulate() result. Criteria follow
Morris et al. (2019) definitions. Optionally, users can provide a custom
callback function to compute additional item-level performance criteria
(e.g., conditional reliability, external criterion SE).
## S3 method for class 'irt_results'
summary(object, criterion = NULL, param = NULL, criterion_fn = NULL, ...)
object |
An |
criterion |
Optional character vector. Which criteria to include
in the output. Valid values: |
param |
Optional character vector. Which parameter types to
include (e.g., |
criterion_fn |
Optional function. A user-defined callback to compute
custom performance criteria. Must accept named arguments
|
... |
Additional arguments (ignored). |
An S3 object of class summary_irt_results containing:
Data frame with one row per sample_size ×
item × param combination, containing the requested criteria
plus n_converged and any custom columns from criterion_fn.
Data frame with one row per sample_size,
containing mean_cor, sd_cor, mean_rmse, sd_rmse,
and n_converged.
Number of replications.
Base seed used.
IRT model type.
Morris, T. P., White, I. R., & Crowther, M. J. (2019). Using simulation studies to evaluate statistical methods. Statistics in Medicine, 38(11), 2074–2102. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1002/sim.8086")}
irt_simulate() for running simulations,
plot.irt_results() for visualization,
recommended_n() for sample-size recommendations.
# Minimal example (iterations reduced for speed; use 100+ in practice)
design <- irt_design(
model = "1PL", n_items = 5,
item_params = list(b = seq(-2, 2, length.out = 5))
)
study <- irt_study(design, sample_sizes = c(200, 500))
results <- irt_simulate(study, iterations = 10, seed = 42)
s <- summary(results)
s$item_summary
s$theta_summary
# Only bias and RMSE for difficulty parameters
summary(results, criterion = c("bias", "rmse"), param = "b")
# Compute custom criterion: relative bias
custom_fn <- function(estimates, true_value, ci_lower, ci_upper, converged, ...) {
valid_est <- estimates[!is.na(estimates)]
rel_bias <- (mean(valid_est) - true_value) / true_value
c(relative_bias = rel_bias)
}
summary(results, criterion_fn = custom_fn)
# Multiple custom criteria
multi_fn <- function(estimates, true_value, ci_lower, ci_upper, converged, ...) {
valid_est <- estimates[!is.na(estimates)]
c(mean_est = mean(valid_est), sd_est = sd(valid_est))
}
summary(results, criterion_fn = multi_fn)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.