My name is Mahes Muniandy and I am a doctoral student working on twin data. I have used limma previously for gene expression as well as methylation data and would now like to use it on my metabolomics data - to detect within twin-pair differences. I have two quesions:
1) Since metabolite data has high multicolinearity, can I safely use my metabolite data as is or should I reduce the data to PCAs and then use the PCA values to represent my metabolites in my limma model?
Here is my design matrix: design <- model.matrix(~Pair+Smoking+subcutaneousfat+bmi)
fit <- lmFit(metabolites, design)
2) In my paired samples design, I am using a continuous variable (subcutaneousfat) which might or might not be discordant within the twin-pairs - I think this is not a problem but should my data be sorted in a way that the higher subcutaneousfat is always compared against the lower one - or does the model care?
Are you referring to collinearity between metabolites? This does not matter to lmFit, as a linear model is fitted to each metabolite separately. Correlations between metabolites do not affect the individual model fits. (It might reduce the benefit of information sharing between metabolites via empirical Bayes, but that's another matter.) Collinearity between covariates/factors is more concerning, e.g., if all smokers had higher BMIs; this would reduce power to detect DE caused by smoking or BMI, as the effects of one cannot be separated from the other.
As for your second question - how you order the samples doesn't matter to lmFit, as long as the order is the same in the design matrix. Instead, the interpretation of the coefficients depends on the order of levels in each factor (for categorical variables). See ?factor for more details.
Hello,
After fitting the linear model with
lmFit
for each metabolite, do you recommend to also useeBayes
?Thank you,
Francisco.