DESeq2 with two continuous variable in a design
1
0
Entering edit mode
sofia • 0
@725046bd
Last seen 5 days ago

Hi everyone, Hi Michael,

I am using DESeq2 to analyze small RNA sequencing results, and I am very uncertain about the results I am getting for a particular design, so I would really appreciate some help.

The following is my coldata and my design

head(colDesign)
Age        BMI

sample_01   17.0      23.03
sample_02   16.1      23.66
sample_03   10.4      18.56
sample_04   15.3      39.57
sample_05   14.5      25.19
sample_06   18.1      18.88

dds=DESeqDataSetFromMatrix(countData = cts_bmi,
colData = colDesign,
design = ~ Age+BMI+Age:BMI)
DESeq(dds)
resultsNames(dds)
[1] "Intercept" "Age"    "BMI"     "Age.BMI"


As you can see, I want to study the interaction between 2 continuous variables, age and BMI. I read the interaction examples on the help page and I also read Michael's answer on a thread regarding the interaction between a discrete and a continuous variable, from what I learned is that, there's no reference point for the continuous variable, it's all embedded in the intercept? So for my design, results(dds, name="Age.BMI") will give the effect of BMI across all ages? Is that correct? And also if I want to use LRT test, should the reduced model be reduced=~Age+BMI?

Thank you in advance, any help is greatly appreciated!

DESeq2 RNASeq R design • 143 views
2
Entering edit mode
@mikelove
Last seen 6 hours ago
United States

Basically, correct. I'd recommend however to center and scale the numeric covariates for model fitting improvement. Then the coefficients represent changes with one SD of the variable. You can back-convert back by multiplying the coefficient by SD(Age) or SD(BMI) if you want the coefficients on original scale.

0
Entering edit mode

Thank you very much Mike! I have another similar question, so I have a design design= Sex+Sex:Age, and the resultsNames are "Intercept" "Sex_M_vs_F" "SexF.Gestational.Age..wks." "SexM.Gestational.Age..wks." If my understanding is right, results(dds, name="Sex_M_vs_F) is the main effect (the gender effect across all ages), and if I do results(dds, contrast=list("SexF.Gestational.Age..wks." "SexM.Gestational.Age..wks.")), it will test if the age effect is different between males and females? Isn't that the same as the main effect?

0
Entering edit mode

See the interactions section of the vignette, and then for further questions I'd recommend consulting with a local statistician. In particular, the main effect is not averaging across all ages.