| Per set = Cases | Controls | Sets | Observations |
|---|---|---|---|
| 1 | 1 | 1 | 2 |
| 1 | 2 | 82 | 246 |
| OR | Lower 95% CI | Upper 95% CI | p | ||
|---|---|---|---|---|---|
| spontaneous | per unit | 7.285 | 3.651 | 14.536 | < .001 |
| induced | per unit | 4.092 | 2.018 | 8.298 | < .001 |
Matched case-control studies with the condLogReg module
In a matched case-control study each case is compared with one or more controls chosen to resemble it on factors such as age, sex or place of residence. The matched sets are part of the design, and the analysis has to keep them: comparisons are made within sets, never across them. Conditional logistic regression does exactly that. It estimates odds ratios from the contrast between each case and its own controls, and the set-specific baseline risks, which a matched design cannot estimate, drop out of the likelihood (Breslow et al. 1978; Breslow and Day 1980).
The condLogReg module brings this analysis to jamovi. It is a clone of jmv’s Binomial Logistic Regression, with the same model builder, reference levels, fit measures and coefficient tables, plus a Matching Variable that identifies the matched sets. The model is fitted by the conditional likelihood, as a Cox model stratified by matched set: the same fit as R’s survival::clogit (Gail et al. 1981; Therneau and Grambsch 2000).
Analyses ▸ Regression ▸ Logistic Regression ▸ Conditional (Matched)
| Box | What goes in it |
|---|---|
| Dependent Variable | case/control status, a factor with two levels; its reference level is the control |
| Matching Variable | the identifier of the matched set (stratum, pair, set number) |
| Covariates | numeric exposures and confounders |
| Factors | categorical exposures and confounders |
The rest of the panel is the one jmv users know: Model Builder (blocks of predictors, interactions), Reference Levels, Assumption Checks (collinearity), Model Fit (deviance, AIC, BIC, pseudo R², overall test) and Model Coefficients (omnibus likelihood ratio tests). Several parts are new or laid out differently:
A first result, with the module’s bundled data set (Infertility after abortion, R’s infert): 248 women in 83 matched sets, each infertile case matched with up to two fertile controls on age, parity and education (Trichopoulos et al. 1976).
| Per set = Cases | Controls | Sets | Observations |
|---|---|---|---|
| 1 | 1 | 1 | 2 |
| 1 | 2 | 82 | 246 |
| OR | Lower 95% CI | Upper 95% CI | p | ||
|---|---|---|---|---|---|
| spontaneous | per unit | 7.285 | 3.651 | 14.536 | < .001 |
| induced | per unit | 4.092 | 2.018 | 8.298 | < .001 |
Each previous spontaneous abortion multiplies the odds of secondary infertility by 7.29, and each induced abortion by 4.09, comparing women of the same age, parity and education.
The module is sideloaded from the .jmo files on the repository’s Releases page, one per jamovi series and CPU: in jamovi, Modules ▸ jamovi library ▸ Sideload. It needs nothing beyond the packages bundled with jamovi (jmvcore, R6, ggplot2 and survival).