Skip to content

kvenkita/mixqrgate

Repository files navigation

mixqrgate

Lifecycle: experimental License: MIT

Location-varying gating for mixtures of quantile regressions

mixqrgate extends mixqr so that the mixing probabilities of a finite mixture of quantile regressions can depend on covariates — and on the quantile level. The mixing weights follow a multinomial-logit gate; with a quantile-indexed gate, latent-class membership can change across the conditional distribution. An observation may belong to one regime near the median and another in the tail.

This is the location-varying mixing of Furno (2025), turned from a Stata reweighting heuristic into a likelihood/EM object — with standard errors on the gate, which the original method does not provide.

Installation

# install.packages("remotes")
remotes::install_github("kvenkita/mixqr")       # required
remotes::install_github("kvenkita/mixqrgate")

Quick start

library(mixqrgate)

d <- sim_gate2(n = 600, gamma = c(0, 1.5))      # gate depends on z

# concomitant gate at the median
fit <- mixqrgate(y ~ x, data = d, gating = ~ z, G = 2, tau = 0.5)
summary(fit)          # component coefficients + gate coefficients WITH SEs

# location-varying gate: refit the gate at each quantile
fitv <- mixqrgate(y ~ x, data = d, gating = ~ z, G = 2,
                  tau = c(0.1, 0.5, 0.9), vary_gating = "discrete")
plot(fitv, which = "gating")                    # gate-vs-tau picture

Key features

  • Concomitant gate. gating = ~ z1 + z2 puts a multinomial logit on the mixing probabilities; the gating covariates may differ from the component-regression covariates.
  • Quantile-indexed gate. A vector tau with vary_gating = "discrete" refits the gate at each quantile, so membership can vary across the distribution (Furno's location-varying mixing).
  • Inference on the gate. Sandwich standard errors, z- and p-values per quantile — answer whether and how membership changes with the covariates and with tau.
  • Reduces to mixqr. gating = ~1 gives a constant gate and the ordinary mixture-of-quantile-regressions fit.
  • Two engines. Parametric asymmetric-Laplace (method = "ald") or the Wu & Yao nonparametric kernel-density path (method = "kde").

Relationship to mixqr

mixqrgate reuses mixqr's component and constrained-error-density machinery through its extension API (weighted_rq(), constrained_kde()); only the gate is new. The component estimates, diagnostics, and quantile semantics are those of mixqr.

Citation

Venkitasubramanian, K. (2026). mixqrgate: Location-Varying Gating for Mixtures of Quantile Regressions. R package version 0.1.0.

Please also cite Furno (2025) for the location-varying mixing idea and Wu & Yao (2016) for the mixture-of-quantile-regressions estimator.

Author and license

Created and maintained by Kailas Venkitasubramanian, University of North Carolina at Charlotte. MIT licensed.

About

Location-varying gating for finite mixtures of quantile regressions in R: a concomitant, quantile-indexed multinomial-logit gate with classification-aware (Louis) standard errors. Companion to mixqr.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors