Dear all,
I would like to confirm that I am using the best model for my experimental design before starting to validate the candidate genes obtained in vitro.
My thread is similar to this previous one but lacking some details on the right contrast to ask which is my concern for this current thread Limma Design for Paired Samples Question.
I have two types of patients: Diseased (n=5) and Normal (n=4) and for each patient, I have two cell populations derived from the same tissue and isolated by flow cytometry sort : Kpos and Kneg .
Which gives me 18 arrays total (Affymetrix).
I applied the Multi Level Experiments design (paragraph 9.7), using a block on patient.
Here is my pData(eset):
SibShip | Treatment | Condition | FileName | Index | |
Diseased1Kneg.CEL | 1 | Kneg | Dis | Diseased1Kneg.CEL | 1 |
Diseased1Kpos.CEL | 1 | Kpos | Dis | Diseased1Kpos.CEL | 2 |
Diseased2Kneg.CEL | 2 | Kneg | Dis | Diseased2Kneg.CEL | 3 |
Diseased2Kpos.CEL | 2 | Kpos | Dis | Diseased2Kpos.CEL | 4 |
etc
Normal5Kpos.CEL | 9 | Kneg | Nor | Normal5Kpos.CEL | 17 |
Normal5Kneg.CEL | 9 | Kpos | Nor | Normal5Kneg.CEL | 18 |
And I have the following Design Matrix :
>Person=Targets$SibShip
>Treat=factor(paste(Targets$Condition,Targets$Treatment,sep="."))
>design <- model.matrix(~0+Treat)
>colnames(design) <- levels(Treat)
>design
Dis.Kneg Dis.Kpos Nor.Kneg Nor.Kpos
1 1 0 0 0
2 0 1 0 0
3 1 0 0 0
4 0 1 0 0
5 1 0 0 0
6 0 1 0 0
7 1 0 0 0
8 0 1 0 0
9 1 0 0 0
10 0 1 0 0
11 0 0 1 0
12 0 0 0 1
13 0 0 1 0
14 0 0 0 1
15 0 0 1 0
16 0 0 0 1
17 0 0 1 0
18 0 0 0 1
attr(,"assign")
[1] 1 1 1 1
attr(,"contrasts")
attr(,"contrasts")$Treat
[1] "contr.treatment"
Because I want to make comparisons both within and between patients, I treated patient as a random effect and used duplicateCorrelation to estimate the variations between the measurements made on a same patient.
>corfit <- duplicateCorrelation(eset,design,block=Person)
> corfit$consensus
> fit <- lmFit(eset,design,block=Person,correlation=corfit$consensus)
The comparisons I am the most interested in are :
- Genes differentially expressed in tissue Kpos compared to Kneg in diseased patients
- Genes differentially expressed in tissue Kpos compared to Kneg in normal patients
- The most important for my analysis : genes specifically differentially expressed in tissue Kpos compared to Kneg in diseased patients and not in normal patients.
In other words, my last question is which genes specifically drives my Kpos phenotype in diseased patients but not in the general population represented by normal patients.
I have used the following contrast matrix and I wonder if my last question shouldn’t be answered with a Venn diagram instead ? I am afraid I am just pulling out genes that don’t vary to the same extend in my diseased and normal patients using the Diff contrast.
> cm <- makeContrasts(Dis.KposvsKneg= Dis.Kpos - Dis.Kneg,
Nor.KposvsKneg= Nor.Kpos - Nor.Kneg,
Diff=(Dis.Kpos-Dis.Kneg)-(Nor.Kpos-Nor.Kneg),
levels=design)
Is that the right way to ask my question #3 ?
As a side note, does the order of my coeficient matters in my Design Matrix or should I consider to do an approach similar to 17.3.8 in the Limma userguide where the levels of the factors were reorderd in order to look specifically at the Dis.Kpos
And in general, is there any contraindications to perform all contrasts in a single contrast matrix?
Any help/input would be very (very !) appreciated.
Thanks for making such a powerful tool available to the community.
Best,
Catherine
Hi Aaron,
I am coming back to this question as I would like some more (theorical) precisions. In your design2 approach, you explained to me that I could block explicitely on each patient because none of my contrast were impacted by my blocking factor.
But what if ones tries to do a contrast comparing conditions belonging to separate blocks, for example in my case, Dis.Kneg with Norm.Kneg. Could you please let me know what would be the problem with such an approach and how the blocking factor would influence the results?
Thanks a lot,
Catherine
In such cases, you need to use
duplicateCorrelation
in the manner described in the original post. This is because the conditions being compared (e.g.,Dis.Kneg
andNorm.Kneg
) belong to different patients. Blocking onPatient
indesign2
will confound any comparison between these conditions, because the patient blocking factors will absorb any differences between patients (and hence, any differences between conditions). In fact, if you set a contrast withDis.Kneg - Norm.Kneg
inmakeContrasts
withdesign2
, you'll actually be comparing betweenKneg
samples in patients 1 and 9 only. Differences in all other patients are absorbed by their corresponding blocking factors.On a similar note, variance estimates with
design2
do not consider variability in absolute expression between patients, as this is absorbed into the patient blocking factors. However, if you intend to compare between conditions with different patients, this variability is arguably relevant and should be considered during significance calculations. This is possible with the one-way layout indesign
, described in the original post. Of course, if you're comparing between conditions within the same patient, then this variability is irrelevant and its incorporation into the variance estimate will result in loss of power.Many thanks for the clarifications!