Skip to contents

Fits a proportional-odds local-odds-ratio Generalized Estimating Equations model, via multgee::ordLORgee, for ordinal responses under a KK matching-on-the-fly design, using the treatment indicator and, optionally, all recorded covariates as predictors. Each GEE cluster is either a matched pair (2 members) or a reservoir singleton (1 member) — GEE is used here purely to fit one marginal cumulative-logit model jointly across matched-pair and reservoir subjects while accounting for the within-pair correlation the matching induces, not as a longitudinal/repeated-measures tool. Unlike the other Inference*KKGEE classes in this family (continuous/count/incidence/proportion, which use an internal Rcpp solver or geepack::geeglm with an exchangeable working correlation), this ordinal class always requires the multgee package and has no use_rcpp option. The raw multgee treatment coefficient is negated when reported so that, consistently with EDI's other ordinal estimators, a positive estimate means movement toward higher response categories. Inference is quasi-likelihood/ estimating-equation based (likelihood_tier = "quasi"): standard errors are GEE sandwich (robust) standard errors, not model-likelihood-based. Bayesian-bootstrap inference is temporarily unavailable because multgee::ordLORgee does not accept the non-uniform observation weights needed to refit the same clustered estimator. It will remain disabled until the weighted ordinal-GEE implementation planned for v1.1.0 is complete.

References

Touloumis, A. (2015). "R Package multgee: A Generalized Estimating Equations Solver for Multinomial Responses." Journal of Statistical Software, 64(8), 1-14, doi:10.18637/jss.v064.i08 , for the local-odds-ratio GEE solver used here; Liang, K.-Y., and Zeger, S. L. (1986). "Longitudinal Data Analysis Using Generalized Linear Models." Biometrika, 73(1), 13-22, doi:10.1093/biomet/73.1.13 , for the underlying GEE estimating-equation framework.

Super class

Inference -> InferenceOrdinalKKGEE

Methods

+ inherited public methods from Inference


InferenceOrdinalKKGEE$new()

Initialize KK ordinal GEE inference, validate the ordinal matched/reservoir design, and prepare the multgee::ordLORgee proportional-odds local-odds-ratio GEE fitting machinery used by InferenceOrdinalKKGEE. Requires the multgee package; errors at construction if it is not installed.

Usage

InferenceOrdinalKKGEE$new(
  des_obj,
  model_formula = NULL,
  verbose = FALSE,
  smart_cold_start_default = NULL
)

Arguments

des_obj

A completed Design object with an ordinal response.

model_formula

Optional formula for covariate adjustment. If NULL (default), the formula from the design object is used and its pre-computed design matrix is reused. If a formula is provided, a new design matrix is constructed from the design's imputed covariates.

verbose

Whether to print progress messages.

smart_cold_start_default

Whether to use smart cold start values.


InferenceOrdinalKKGEE$compute_estimate_with_bootstrap_weights()

Recomputes the KK ordinal treatment estimate under subject/block bootstrap weights, used by the Bayesian bootstrap and related weighted-resampling machinery. If the supplied weights are all (numerically) equal, this short-circuits to the unweighted $compute_estimate(estimate_only = TRUE) (the multgee proportional-odds GEE fit) rather than refitting. Otherwise, since multgee::ordLORgee does not support observation weights, this falls back to a different, approximating model: a plain (non-GEE, no matched-pair clustering) weighted proportional-odds ordinal logistic regression via fast_ordinal_regression_weighted_cpp, treating the coefficient on the first predictor column as the treatment effect. This always leaves the standard error and degrees of freedom unavailable (s_beta_hat_T = NA, df = Inf) regardless of estimate_only, since it is a point-estimate-only fallback path.

Usage

InferenceOrdinalKKGEE$compute_estimate_with_bootstrap_weights(
  subject_or_block_weights,
  estimate_only = FALSE
)

Arguments

subject_or_block_weights

Subject-, block-, cluster-, or matched-set bootstrap weights.

estimate_only

If TRUE, compute only the weighted point estimate. Has no effect on the weighted (non-uniform-weight) fallback path, which never computes a standard error regardless.


InferenceOrdinalKKGEE$clone()

The objects of this class are cloneable with this method.

Usage

InferenceOrdinalKKGEE$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

# \donttest{
seq_des = DesignSeqOneByOneKK14$new(n = 10, response_type = 'ordinal')
for (i in 1:10) {
  seq_des$add_one_subject_to_experiment_and_assign(data.frame(x1 = rnorm(1), x2 = rnorm(1)))
}
seq_des$add_all_subject_responses(sample(1:4, 10, replace = TRUE))
inf = InferenceOrdinalKKGEE$new(seq_des)
inf$compute_estimate()
#> [1] NA
# }