Survival GWAS model (coxph) with interaction term enabled

I wanted to see if it’d be possible to add a coxPH model with interaction term as a GWAS model. I’ve been coding it myself using the coxPH function in R’s survival library (coxph function | R Documentation).

There is only one tool out there that can do this (and I’ve digged a lot to find this): gwasurvivr (gwasurvivr Vignette).

When I run it I just use my own GWAS script across 10,000 SNPs at a time, and use the survival package in R ( like this:

tmp$SurvObj <- Surv(tmp$FollowUpTime_phenotype,  tmp$Incd_phenotype== 1)
summary( coxph(tmp$SurvObj ~ phenotype*tmp[,variant_indx]+age +age2 + Sex_numeric+SmokingStatusv2 +Townsend+ PC1+PC2+PC3+PC4+PC5+PC6+PC7+PC8+PC9+PC10, data = tmp))$coeff[19,] #the 19 picks out the interaction coefficients/pvals/se from the model output

But this is SUPER inefficient (it takes ~3h across 50,000 individuals for 10,000 variants).

Adding this would be super impactful and make Hail one of the few efficient tools for cox- GWAS analyses with interaction terms.

Hope to hear back soon!
Maryam Zekavat (

1 Like