R LIMMA Longitudinal analysis adjusting for continuous variables
1
0
Entering edit mode
8.4 years ago

Hi,

I'm analysing a longitudinal gene expression qPCR array study in LIMMA. I have 3 groups with baseline and week 48 measurements. I also have 2 confounding baseline continuous variables that I would like to include in the model.

I found something similar discussed here: https://stat.ethz.ch/pipermail/bioconductor/2013-October/055651.html

But I'm not sure if their confounding variable CES is of the same nature as mine, i.e. only a baseline measure. Also this type of analysis is different to many of the less complex studies I've done previously - so I thought I'd check.

Nevertheless I've conducted the analysis as follows and would like to make sure that I'm on the right path.

design<-model.matrix(~0+time:treatment+confounder1+confounder2)

colnames(design2)[3:8]<-c("t1wk0","t1wk48","t2wk0", "t2wk48", "t3wk0","t3wk48")
#produces a design matrix that looks like:
      VL       TotChol t1wk0 t1wk48 t2wk0 t2wk48 t3wk0 t3wk48
1  4.611723     5.1     1      0     0      0     0      0
2  5.752048     4.9     1      0     0      0     0      0
3  3.763428     4.9     1      0     0      0     0      0
4  5.328380     5.4     1      0     0      0     0      0
5  5.419956     5.1     1      0     0      0     0      0
6  4.970347     4.7     0      0     1      0     0      0
7  5.651278     3.5     0      0     0      0     1      0
8  3.857935     4.7     1      0     0      0     0      0
9  5.260071     2.6     0      0     0      0     1      0
..........................................................

corfit <- duplicateCorrelation(eset,design2,block=patient)
corfit$consensus
#where patient is a categorical variable denoting which patient is which#

fit_adj<-lmFit(eset,design,block=patient,correlation=corfit$consensus)
fit_adj<-eBayes(fit_adj)

#Then pull out the comparisons of interests with specific contrasts:
con.t1w48<-makeContrasts(t1wk48-t1wk0, levels=design)
#etc

In previous studies I've included patient directly in the model but this wouldn't work here as I think it's confounded with the confounders so I'm forced to use duplicateCorrelation here. I'm also concerned that the value of the baseline confounding variables will be repeating in the model for both wk0 and wk48 arrays for a patient, will this interfere with the analysis?

Thanks

Longitudinal R Confounding LIMMA • 5.0k views
ADD COMMENT
0
Entering edit mode
8.3 years ago

I'd advise you cross post this to Bioconductor support (sorry, I know the mods don't like that, but you'll probably get a better answer by Arron Lun, or Gordon Smyth).

As for your initial design, I know that just leaving an interaction term, with control variables will not give you the desired effect you want - You're assuming that at time 0, gene expression is 0. I'd do:

treatment + time + treatment:time + confounder1 + confounder2

or

treatment * time + confounder1 + confounder2
ADD COMMENT
0
Entering edit mode
Can you explain the difference between the two designs?
ADD REPLY
0
Entering edit mode

There is no difference between the two I listed:

A + B + A:B

Is long hand notation for

A * B
ADD REPLY

Login before adding your answer.

Traffic: 2599 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6