Possible methodologies for constructing multi-level comparisons in limma
0
0
Entering edit mode
svlachavas ▴ 830
@svlachavas-7225
Last seen 6 months ago
Germany/Heidelberg/German Cancer Resear…

Dear Bioconductor Community,

in addition to one of my older posts, regarding the interpretation of multifactorial designs in limma (C: Possible implementation of multifactorial contrasts in limma regarding a microar),  i would like to ask for some updated questions conserning the appropriate design of multi-level contrasts in limma. In detail, i recently aqcuired some missing phenotype information about my already analyzed-merged microarray expression set, which indicates if the primary colorectal cancer samples, have also developed syncronous metastases. Thus, a small subset of my pData looks like:

head(PDATA)
                          Disease     Meta_factor  # where meta_factor 0 and 1 indicate not mestastatic and metastatic samples repsectively(and also with 1 their adjucent control samples)


St_1_WL57.CEL  Normal           0
St_2_WL57.CEL  Cancer           0
St_N_EC59.CEL  Normal           0
St_T_EC59.CEL  Cancer           0
St_N_EJ58.CEL  Normal           1
St_T_EJ58.CEL  Cancer           1......(also to mention the samples are paired)

Thus, if i would like to compare only the metastatic cancer to their adjucent samples(and not generally comparison of cancer vs normal samples), it would have to follow a similar design like limma vignettes guide 9.7, and treat each patient as a random effect:

library(limma)

library(statmod)

condition <- factor(eset.2$Disease, levels=c("Normal","Cancer"))

pairs <- factor(rep(1:30, each = 2))
metastatic <- factor(eset.2$Meta_factor)

 f <- paste(condition, metastatic, sep=".")

 f <- factor(f)

head(f)
[1] Normal.0 Cancer.0 Normal.0 Cancer.0 Normal.1 Cancer.1...

Levels: Cancer.0 Cancer.1 Normal.0 Normal.1

design <- model.matrix(~0 +f)
colnames(design) <- levels(f)

corfit <- duplicateCorrelation(eset.2, design, block=pairs)

fit <- lmFit(eset.2, design, block=pairs, correlation=corfit$consensus)

 

-------------Then, with makeContrasts if i want to define the above contrast-------------:

cm <- makeContrasts(Meta_CancervsMeta_Control="Cancer.1-Normal.1" , levels=design)

and continue to find possible DE genes between the metastatic cancer samples and their adjucent control( 6 vs 6 comparison)

But, in the same time-regarding the fact that the above implementation is correct-: if i would like somehow perform a comparison between the metastatic cancer vs their non-metastatic :

Should i implement the above procedure, and in the makeContrasts() define one more contrast ??

i.e Meta_CancervsNo_Meta_Cancer="Cancer.1-Cancer.0" ?? and athough there is an inbalance in the comparison(6 metastatic cancer vs 24 non_metastatic cancer samples), limma should also take care of it ??

Or the above comparison is irrelevant to the true biological hypothesis, and i could follow something that Mr. Aaron Lun has proposed in an older post:

f <- relevel(f, ref="Normal.0")
design <- model.matrix(~0 + pairs + f)
design <- design[,-ncol(design)]
colnames(design)

colnames(design)
 [1] "pairs1"    "pairs2"    "pairs3"    "pairs4"    "pairs5"    "pairs6"    "pairs7"   
 [8] "pairs8"    "pairs9"    "pairs10"   "pairs11"   "pairs12"   "pairs13"   "pairs14"  
[15] "pairs15"   "pairs16"   "pairs17"   "pairs18"   "pairs19"   "pairs20"   "pairs21"  
[22] "pairs22"   "pairs23"   "pairs24"   "pairs25"   "pairs26"   "pairs27"   "pairs28"  
[29] "pairs29"   "pairs30"   "fCancer.0" "fCancer.1"

fit <- lmFit(eset.2, design)

contrast.matrix <- makeContrasts(M.CvsC="fCancer.1-fCancer.0", level=design)

fit2 <- contrasts.fit(fit, contrast.matrix)

fit3 <- eBayes(fit2, trend=TRUE)..

But here what is the real "biological interpretation" of this specific contrast in comparison to the above second contrast ?

That is , here, any identified DE genes would represent genes that "behave" differently and thus have a different alteration between the metastatic and no metastatic cancer samples, in respect to their adjucent samples ?? And thus, it is more relevant and appropriate from the above direct comparison with duplicateCorrelation(regarding the second comparison) ??

Any suggestion or idea would be grateful !!

 

 

limma paired analysis multiple factor design affymetrix microarrays duplicatecorrelation • 1.2k views
ADD COMMENT

Login before adding your answer.

Traffic: 676 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