Compare EQC and SAC Calibration Results
compare_eqc_sac.RdCompares the calibration results from EQC and SAC algorithms. The target reliability must match exactly. Numeric estimates are always shown side by side, but agreement is evaluated only when the stored estimand and design contracts match: model, reliability metric, theta population, latent specification, item scope, test length, scale convention, and either the complete fixed item bank or normalized superpopulation generator.
compare_eqc_spc() is a deprecated backward-compatible alias for
compare_eqc_sac().
Value
A list with comparison statistics (invisibly):
c_eqcCalibrated c* from EQC.
c_sacCalibrated c* from SAC.
diff_absAbsolute difference between c* values.
diff_pctPercent difference relative to EQC.
agreementLogical.
TRUEif the objects are comparable, both calibrations are valid for agreement, and the difference is below 5 percent;FALSEif evaluated and above threshold;NAwhen agreement is withheld.target_rhoTarget reliability.
achieved_eqcAchieved reliability from EQC.
achieved_sacAchieved reliability from SAC.
achieved_diff_absAbsolute achieved-reliability difference.
metric_eqc,metric_sacStored canonical reliability metrics.
model_eqc,model_sacMeasurement models.
n_items_eqc,n_items_sacTest lengths.
eqc_statusEQC root/calibration status when available.
sac_statusSAC canonical calibration status when available.
sac_status_flagsSAC multi-condition status flags when available.
comparableLogical indicating whether both objects target the same estimand and design.
comparability_reasonsStable reason codes explaining a non-comparable result.
agreement_status,agreement_reasonsWhether agreement was evaluated, and why it was withheld when it was not.
eqc_contract,sac_contractNormalized estimand and design contracts used for the comparability decision.
Examples
# \donttest{
# Run both algorithms
eqc_result <- eqc_calibrate(target_rho = 0.80, n_items = 25, seed = 42)
sac_result <- sac_calibrate(target_rho = 0.80, n_items = 25,
reliability_metric = "info",
c_init = eqc_result,
resample_items = FALSE,
seed = 42)
# Compare results
compare_eqc_sac(eqc_result, sac_result)
#>
#> =======================================================
#> EQC vs SAC Comparison
#> =======================================================
#>
#> Target reliability : 0.8000
#> EQC c* : 0.905885
#> SAC c* : 0.905406
#> Absolute difference : 0.000478
#> Percent difference : 0.05%
#> EQC achieved rho : 0.8000
#> SAC achieved rho : 0.8001
#> Comparable : YES
#> Agreement (< 5%) : YES
#> Agreement status : evaluated
#> EQC status : uniroot_success
#> SAC status : ok
#> SAC status flags : ok
#>
# }