Thank you for help!
Hallo,
I have some problem with importing data using GEOquery. I download an ExpressionSet for some further analysis, however in my record only few GSMs from all are interesting for me. My question is how to modify my code to download only the selected GSMs and analyze it further with limma package. I am grateful for any suggestions.
eset<-getGEO('GSE13937')[[1]] #-----> but I would like the data only for e.g. GSM26056, GSM26076, GSM26102, and GSM26123
And, then perform a standard analysis like:
design <-cbind(normal=c(1,1,0,0),
tumour=c(0,0,1,1))
c <-makeContrasts(normal-tumour,levels=design)
fit <-lmFit(eset, design)
fit2 <-contrasts.fit(fit,c)
fit2 <-eBayes(fit2)
glist <-topTable(fit2, n=50, adjust="BH", sort.by="P", p.value=0.01)
1 answer
Well, subsetting an ExpressionSet is pretty easy:
eset1=eset[,c("GSM426056", "GSM426076", "GSM426102", "GSM426123")]
However, you might not want to do things this way. Instead, you can create your design matrix with all "0" except for the two "normals" and the two "tumors". The rest of your code can remain unchanged (the contrasts, testing, etc.). You get the benefit of a more robust measure of variance if you include all samples even though the testing will be based on only your four samples.
Log in to answer this question.