Question: DESeq2 design & model matrix not full rank - am I nesting correctly?
gravatar for amye107
22 months ago by
amye1070 wrote:


I have a multi-factor design RNA-seq experiment I am analyzing with DESeq2.  I am having trouble with the design due to "model matrix not full rank". I have been trying to work my way through the advice from the vignette and previous posts on this issue...

Here is my colData:

  treatment condition tank tank.nested
1 control high A A
2 control high A A
3 control high A A
4 control high A A
5 control high B B
6 control high B B
7 control high B B
8 control high B B
9 control low C C
10 control low C C
11 control low C C
12 control low C C
13 control low D D
14 control low D D
15 control low D D
16 control low D D
17 infected high E A
18 infected high E A
19 infected high E A
20 infected high E A
21 infected high F B
22 infected high F B
23 infected high F B
24 infected high F B
25 infected low G C
26 infected low G C
27 infected low G C
28 infected low G C
29 infected low H D
30 infected low H D
31 infected low H D
32 infected low H D


Essentially, I am interested in: 1) what are the DE genes between infected and control? and 2) do the DE genes found differ depending on condition?

"Tank" denotes the enclosure the animals were sampled from, and needs to be controlled for in analyses if possible. Trying to follow previous posts, I tried to nest tank within treatment (hence the tank.nested column above). However, I realise that tank A&B are still only within high, C&D only within low etc. so have not solved the issue.

Could anyone suggest how to set up my colData and/or design to resolve the error of model matrix not full rank? And which results() and contrast=list should allow me to get at the comparisons I am trying to make.

I am getting myself very confused - I am waiting on a meeting with a local statistician to help me work through it. But would really appreciated some help in the meantime to try to get my head around it! Many thanks in advance.

ADD COMMENTlink modified 22 months ago by Michael Love26k • written 22 months ago by amye1070
Answer: DESeq2 design & model matrix not full rank - am I nesting correctly?
gravatar for Michael Love
22 months ago by
Michael Love26k
United States
Michael Love26k wrote:

You can't answer #1 and control for tank using fixed effects models, because treatment and tank are confounded. And you can't do a differential analysis in #2 and control for tank using fixed effects models because again, the treatment, condition and treatment:condition are confounded with tank.

Instead, you can use the limma-voom software for RNA-seq, and the duplicateCorrelation() function to inform the model that samples from the same tank are correlated. It's an alternative method for controlling for sample correlations than using fixed effects.

ADD COMMENTlink written 22 months ago by Michael Love26k

Thank you Michael for the advice - much appreciated.

ADD REPLYlink written 22 months ago by amye1070
Please log in to add an answer.


Use of this site constitutes acceptance of our User Agreement and Privacy Policy.
Powered by Biostar version 16.09
Traffic: 257 users visited in the last hour