There are a few problems with the way you've set up this model. (I'm assuming that all samples of all clones under all treatments eventually died. Otherwise your Surv()
object needs to have a censoring indicator, not just a death time.)
First, you seem to have coded Concentration
as a continuous predictor having a linear association with log-hazard of death. Effects of drugs often are expressed better on a logarithmic scale of concentration, providing an approximately linear association over a reasonable range of concentrations. You need to verify your linearity assumption. It might be OK, but you need to check it.
Second, your model term (Concentration+DrugType)
has an implicit assumption that Concentration
and DrugType
have additive effects on log-hazard. That is, you're assuming that the slope of the concentration-survival relationship is identical for all values of Drug
. Again, might be true, but you need to verify.
Third, your use of the :
operator between that additive term and CloneType
doesn't provide a direct test of the difference between the red
and green
types. The way you've set up the model, the Concentration:CloneTypegreen
and Concentration:CloneTypered
coefficients you show just represent the slopes of the concentration-outcome relationships separately for green
and red
clones. Both those concentration-outcome slopes are significantly different from 0. But your model doesn't provide a comparison of concentration-outcome slope difference between the two levels of CloneType
. At first glance, the slopes don't seem significantly different at all. But with the limitations noted above with respect to the handling of Concentration
itself and its additivity with Drug
, it's premature to say for sure.
What you've done is set up a model that only includes interaction terms, without any individual terms. As the discussion on this page describes, that's almost never a good idea.
Putting aside the Drug
term for now and assuming that you have Concentration
properly transformed to have a linear association with log-hazard of death, the most straightforward way to test for a difference with respect to CloneType
is to include both individual effects and an interaction for Concentration
and CloneType
. Written out fully, that would be:
coxph(Surv(time = df$TOD) ~ Concentration + CloneType + Concentration:CloneType, data = df)
but R will generate that directly from:
coxph(Surv(time = df$TOD) ~ Concentration * CloneType, data = df).
Then the coefficient for Concentration
will be the concentration-outcome slope for the reference CloneType
(apparently green
), that for CloneType
will be the difference associated with red
versus green
when Concentration
is 0, and the Concentration:CloneTypered
coefficient will be the difference in concentration-response slope for red
versus green
. That difference in slopes is what you seem to be interested in, so it's the significance of the interaction term in this full model that you need to examine. (If you are examining different drugs, then add appropriate individual and interaction terms based on your understanding of the subject matter and the specific hypotheses you wish to test.)
Finally, consider whether survival analysis is really the best measure of drug sensitivity. Survival analysis will tell you how quickly drugs kill the cells, but drug sensitivity is more typically defined as the drug concentration at which half of cells have been killed at some defined time (IC50). Consider what those reviewing and reading your work will be expecting in your field of study. If survival analysis isn't what they expect as a measure of "drug sensitivity" be prepared to defend you choice if you continue to use it.