I wanted to make sure that my approach to performing a matched case-control study is on the right track. I am looking at a group of patients who all underwent the same surgical procedure for a given disease. Initially logistic regression analysis was performed which found that there was an association between disease D and death following the procedure. I then created two groups, one with disease D (D+) and another without the disease (D-). This was done using coarsened exact matching (cem) via the MatchIt package in R. I matched the groups based on age, gender, race, income status, insurance type, and other comorbidities.

So now I have 2 groups (D+ and D-) with approximately 8000 patients total. I want to see if disease D, even after matching, is associated with post-procedure death. I have read that conditional logistic regression should be used in this case. My confusion stems from the fact that implementations in R for conditional logistic regression (e.g. clogit from the survival package) seem to be using cox regression (coxph). Why is this the case? Would it be incorrect to use unconditional logistic regression (e.g. glm) along with the weights created during matching? As an aside, why can't the chi-square test simply be used instead?


1 Answer 1


To your main question about implementation, this is quoted from the clogit function help:

It turns out that the logliklihood for a conditional logistic regresson model = loglik from a Cox model with a particular data structure. Proving this is a nice homework exercise for a PhD statistics class; not too hard, but the fact that it is true is surprising. When a well tested Cox model routine is available many packages use this ‘trick’ rather than writing a new software routine from scratch, and this is what the clogit routine does. In detail, a stratified Cox model with each case/control group assigned to its own stratum, time set to a constant, status of 1=case 0=control, and using the exact partial likelihood has the same likelihood formula as a conditional logistic regression. The clogit routine creates the necessary dummy variable of times (all 1) and the strata, then calls coxph.

So really by using a special case of Cox regression is a shortcut to performing the same analysis with existing, tested routines.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.