Decomposes each parameter's DER into its constituent factors: Kish DEFF, shrinkage factor B, protection factor R_k, and finite-J correction kappa. This decomposition reveals why each parameter has its observed DER value.
Value
A data.frame with columns: param, param_type,
der, deff_mean, B_mean, R_k, kappa,
der_predicted.
Details
For fixed effects:
fe_within: DER \(\approx\) DEFF \(\cdot\) (1 - R_k), where R_k \(\approx\) 0.fe_between: DER \(\approx\) DEFF \(\cdot\) (1 - R_k), where R_k \(\approx\) B.
For random effects:
DER \(\approx\) B \(\cdot\) DEFF \(\cdot\) kappa(J).
See also
der_theorem_check() for verifying theoretical predictions,
plot.svyder() with type = "decomposition" for visualization.
Other analysis:
der_compare(),
der_sensitivity(),
der_theorem_check()
Examples
data(nsece_demo)
result <- der_diagnose(
nsece_demo$draws,
y = nsece_demo$y, X = nsece_demo$X,
group = nsece_demo$group, weights = nsece_demo$weights,
psu = nsece_demo$psu, family = "binomial",
sigma_theta = nsece_demo$sigma_theta,
param_types = nsece_demo$param_types
)
decomp <- der_decompose(result)
head(decomp)
#> param param_type der deff_mean B_mean R_k kappa
#> 1 beta[1] fe_between 0.2617696 2.59527 0.8543053 0.8991359 NA
#> 2 beta[2] fe_within 2.6868825 2.59527 0.8543053 0.0000000 NA
#> 3 beta[3] fe_between 0.3427294 2.59527 0.8543053 0.8679407 NA
#> 4 theta[1] re 3.3838218 2.59527 0.8543053 NA 0.8213246
#> 5 theta[2] re 0.6758803 2.59527 0.8543053 NA 0.8213246
#> 6 theta[3] re 1.1187639 2.59527 0.8543053 NA 0.8213246
#> der_predicted
#> 1 0.2617696
#> 2 2.5952698
#> 3 0.3427294
#> 4 1.8210021
#> 5 1.8210021
#> 6 1.8210021