I've got a DESeq2 design matrix question.
I have two groups of mice, young and old.
Mice in both groups have been given of 3 different treatments (control treatment (treatment zero), and two treatments of interest (treatment1 and treatment2). Some of the treated mice show a response to the treatment, some do not. The control treatment mice never show a response. Some of the old mice do not respond to one treatment.
I'd like to pull out:
1) the DEGs after treatment1 compared to treatment0 in young mice specific to the repsonse
2) the DEGs after treatment2 compared to treatment0 in young mice specific to the repsonse
3) the DEGs after treatment1 compared to treatment0 in old mice specific to the repsonse
4) the DEGs after treatment1 compared to treatment0 in old mice specific to the response
1) the differences between 1) and 3) (i.e. some sort of interaction term)
1) the differences between 2) and 4) (i.e. some sort of interaction term)
I know how to do all of this without addressing the response (i.e. as a simple interaction term based design of ~age+treatment +age:treatment) but I have no clue how to address the response variable and get only genes that are changing in the the responding mice.
Is there a way to do this all in one design or should I be looking to split it up somehow?
Here's the metadata:
age | treatment | response |
Old | treatment0 | no_response |
Old | treatment0 | no_response |
Old | treatment0 | no_response |
Old | treatment0 | no_response |
Old | treatment0 | no_response |
Old | treatment0 | no_response |
Old | treatment0 | no_response |
Old | treatment1 | no_response |
Old | treatment1 | no_response |
Old | treatment1 | no_response |
Old | treatment1 | no_response |
Old | treatment1 | no_response |
Old | treatment1 | no_response |
Old | treatment1 | no_response |
Old | treatment1 | no_response |
Old | treatment2 | no_response |
Old | treatment2 | no_response |
Old | treatment2 | no_response |
Old | treatment2 | no_response |
Old | treatment2 | no_response |
Old | treatment2 | no_response |
Old | treatment2 | reponse |
Old | treatment2 | reponse |
Young | treatment0 | no_response |
Young | treatment0 | no_response |
Young | treatment0 | no_response |
Young | treatment0 | no_response |
Young | treatment0 | no_response |
Young | treatment0 | no_response |
Young | treatment0 | no_response |
Young | treatment1 | no_response |
Young | treatment1 | no_response |
Young | treatment1 | no_response |
Young | treatment1 | no_response |
Young | treatment1 | no_response |
Young | treatment1 | reponse |
Young | treatment1 | reponse |
Young | treatment1 | reponse |
Young | treatment1 | reponse |
Young | treatment1 | reponse |
Young | treatment1 | reponse |
Young | treatment1 | response |
Young | treatment2 | no_response |
Young | treatment2 | no_response |
Young | treatment2 | no_response |
Young | treatment2 | no_response |
Young | treatment2 | reponse |
Young | treatment2 | reponse |
Young | treatment2 | reponse |
Young | treatment2 | reponse |
Young | treatment2 | reponse |
Young | treatment2 | reponse |
Thanks,
John
No, the responder status is a separate phenotype (whether the tumor regresses (response) after treatment or not (no_response))
Hmm, there is a bit of an issue here in splitting the samples based on a random effect. I see what you want to do though. I mean a practical approach, not dealing with the random effect problem, would be to have treatment with levels: control, trt1no, trt1yes, trt2no, trt2yes. There will be some fixing to do here, because you don't have old mice who are responders to trt1, so you can't fix that interaction term with age. You will have to remove such terms from the model.matrix manually (see vignette for code on that).
You could also think about using mixed effects models, but this isn't built in to DESeq2 obviously.
So, in general you're suggesting making a custom matrix, dropping out columns that are unrepresented in the metadata and then making contrasts to get at what I'm interested in?
After recoding the `treatment` variable, yes. From scanning, I think it's just one interaction that will have no samples to fit it, but you'll want to take a look at the model matrix.
Great! I should be good to go from here. Thanks!