Loop design - biological, technical replication and contrasts
1
0
Entering edit mode
@gordon-smyth
Last seen 11 hours ago
WEHI, Melbourne, Australia
Dear Maciej, I haven't been able to figure out from this or your previous post exactly what your experimental design is. I suspect this is why you haven't got replies yet. I can see that you have technical replicates, but I'm not quite clear that there is any biological replication. It's also unclear to me why you need a single channel analysis. Perhaps you could explain your design a bit more explicitly, including a data.frame with separate factors indicating temperature, maize line, biological rep, and any other factors you need to take into account? Best wishes Gordon > Date: Tue, 02 Mar 2010 13:01:23 +0100 > From: mjonczyk at biol.uw.edu.pl > To: <bioconductor at="" stat.math.ethz.ch=""> > Cc: Maciej Jo?czyk <mjonczyk at="" biol.uw.edu.pl=""> > Subject: Re: [BioC] Loop design - biological, technical replication > and contrasts > > Hi again, > > I apologise for replying to my own post, but it helps keep track if > someone will be interested. > > I analysed my data with single channel analysis in limma, according to > Chapter 9. of limma usersguide. > > I changed my targets file (to make it more condensed) and removed suffix > which > identified biological replication. So my targets looks like: > >> nt_trg > > SlideNumber FileName Cy3 Cy5 > 1 93 c_093_DH_K_vs_DH_CHex.gpr hk hc > 2 104 c_104_DH_CH_vs_DH_Kex.gpr hc hk > 3 116 c_116_DHK_vs_DHCHex.gpr hk hc > 4 16 c_016_DH_C_vs_DH_Kex.gpr hc hk > 5 94 c_094_DH_K_vs_DL_Kex.gpr hk lk > 6 105 c_105_DL_K_vs_DH_Kex.gpr lk hk > 7 117 c_117_DHK_vs_DLKex.gpr hk lk > 8 139 c_139_DL_K_vs_DH_Kex.gpr lk hk > 9 92 c_092_DL_CH_vs_DL_Kex.gpr lc lk > 10 106 c_106_DL_K_vs_DL_CHex.gpr lk lc > 11 118 c_118_DLCH_vs_DLKex.gpr lc lk > 12 23 c_023_DL_K_vs_DL_Cex.gpr lk lc > 13 95 c_095_DL_CH_vs_DH_CHex.gpr lc hc > 14 107 c_107_DH_CH_vs_DL_CHex.gpr hc lc > 15 119 c_119_DLCH_vs_DHCHex.gpr lc hc > 16 136 c_136_DH_C_vs_DL_Cex.gpr hc lc > 17 101 c_101_DL_K_vs_DH_CHex.gpr lk hc > 18 103 c_103_DH_CH_vs_DL_Kex.gpr hc lk > 19 121 c_121_DLK_vs_DHCHex.gpr lk hc > 20 15 c_015_DH_C_vs_DL_Kex.gpr hc lk > 21 100 c_100_DH_K_vs_DL_CHex.gpr hk lc > 22 102 c_102_DL_CH_vs_DH_Kex.gpr lc hk > 23 120 c_120_DHK_vs_DLCHex.gpr hk lc > 24 140 c_140_DL_C_vs_DH_Kex.gpr lc hk > > > I transform it to apropriate form: >> tgr_sc=targetsA2C(nt_trg) >> tgr_sc > > channel.col SlideNumber FileName Target > 1.1 1 93 c_093_DH_K_vs_DH_CHex.gpr hk > 1.2 2 93 c_093_DH_K_vs_DH_CHex.gpr hc > 2.1 1 104 c_104_DH_CH_vs_DH_Kex.gpr hc > 2.2 2 104 c_104_DH_CH_vs_DH_Kex.gpr hk > 3.1 1 116 c_116_DHK_vs_DHCHex.gpr hk > 3.2 2 116 c_116_DHK_vs_DHCHex.gpr hc > 4.1 1 16 c_016_DH_C_vs_DH_Kex.gpr hc > 4.2 2 16 c_016_DH_C_vs_DH_Kex.gpr hk > 5.1 1 94 c_094_DH_K_vs_DL_Kex.gpr hk > 5.2 2 94 c_094_DH_K_vs_DL_Kex.gpr lk > 6.1 1 105 c_105_DL_K_vs_DH_Kex.gpr lk > 6.2 2 105 c_105_DL_K_vs_DH_Kex.gpr hk > 7.1 1 117 c_117_DHK_vs_DLKex.gpr hk > 7.2 2 117 c_117_DHK_vs_DLKex.gpr lk > 8.1 1 139 c_139_DL_K_vs_DH_Kex.gpr lk > 8.2 2 139 c_139_DL_K_vs_DH_Kex.gpr hk > 9.1 1 92 c_092_DL_CH_vs_DL_Kex.gpr lc > 9.2 2 92 c_092_DL_CH_vs_DL_Kex.gpr lk > 10.1 1 106 c_106_DL_K_vs_DL_CHex.gpr lk > 10.2 2 106 c_106_DL_K_vs_DL_CHex.gpr lc > 11.1 1 118 c_118_DLCH_vs_DLKex.gpr lc > 11.2 2 118 c_118_DLCH_vs_DLKex.gpr lk > 12.1 1 23 c_023_DL_K_vs_DL_Cex.gpr lk > 12.2 2 23 c_023_DL_K_vs_DL_Cex.gpr lc > 13.1 1 95 c_095_DL_CH_vs_DH_CHex.gpr lc > 13.2 2 95 c_095_DL_CH_vs_DH_CHex.gpr hc > 14.1 1 107 c_107_DH_CH_vs_DL_CHex.gpr hc > 14.2 2 107 c_107_DH_CH_vs_DL_CHex.gpr lc > 15.1 1 119 c_119_DLCH_vs_DHCHex.gpr lc > 15.2 2 119 c_119_DLCH_vs_DHCHex.gpr hc > 16.1 1 136 c_136_DH_C_vs_DL_Cex.gpr hc > 16.2 2 136 c_136_DH_C_vs_DL_Cex.gpr lc > 17.1 1 101 c_101_DL_K_vs_DH_CHex.gpr lk > 17.2 2 101 c_101_DL_K_vs_DH_CHex.gpr hc > 18.1 1 103 c_103_DH_CH_vs_DL_Kex.gpr hc > 18.2 2 103 c_103_DH_CH_vs_DL_Kex.gpr lk > 19.1 1 121 c_121_DLK_vs_DHCHex.gpr lk > 19.2 2 121 c_121_DLK_vs_DHCHex.gpr hc > 20.1 1 15 c_015_DH_C_vs_DL_Kex.gpr hc > 20.2 2 15 c_015_DH_C_vs_DL_Kex.gpr lk > 21.1 1 100 c_100_DH_K_vs_DL_CHex.gpr hk > 21.2 2 100 c_100_DH_K_vs_DL_CHex.gpr lc > 22.1 1 102 c_102_DL_CH_vs_DH_Kex.gpr lc > 22.2 2 102 c_102_DL_CH_vs_DH_Kex.gpr hk > 23.1 1 120 c_120_DHK_vs_DLCHex.gpr hk > 23.2 2 120 c_120_DHK_vs_DLCHex.gpr lc > 24.1 1 140 c_140_DL_C_vs_DH_Kex.gpr lc > 24.2 2 140 c_140_DL_C_vs_DH_Kex.gpr hk > > Next, I made design matrix > >> u=unique(tgr_sc$Target) >> f=factor(tgr_sc$Target,levels=u) >> design=model.matrix(~0+f) >> colnames(design)=u >> design > > hk hc lk lc > 1 1 0 0 0 > 2 0 1 0 0 > 3 0 1 0 0 > 4 1 0 0 0 > 5 1 0 0 0 > 6 0 1 0 0 > 7 0 1 0 0 > 8 1 0 0 0 > 9 1 0 0 0 > 10 0 0 1 0 > 11 0 0 1 0 > 12 1 0 0 0 > 13 1 0 0 0 > 14 0 0 1 0 > 15 0 0 1 0 > 16 1 0 0 0 > 17 0 0 0 1 > 18 0 0 1 0 > 19 0 0 1 0 > 20 0 0 0 1 > 21 0 0 0 1 > 22 0 0 1 0 > 23 0 0 1 0 > 24 0 0 0 1 > 25 0 0 0 1 > 26 0 1 0 0 > 27 0 1 0 0 > 28 0 0 0 1 > 29 0 0 0 1 > 30 0 1 0 0 > 31 0 1 0 0 > 32 0 0 0 1 > 33 0 0 1 0 > 34 0 1 0 0 > 35 0 1 0 0 > 36 0 0 1 0 > 37 0 0 1 0 > 38 0 1 0 0 > 39 0 1 0 0 > 40 0 0 1 0 > 41 1 0 0 0 > 42 0 0 0 1 > 43 0 0 0 1 > 44 1 0 0 0 > 45 1 0 0 0 > 46 0 0 0 1 > 47 0 0 0 1 > 48 1 0 0 0 > attr(,"assign") > [1] 1 1 1 1 > attr(,"contrasts") > attr(,"contrasts")$f > [1] "contr.treatment" > > *Is it correct form my design? I see, that it simply identifies what RNA > was hybridized on each array. > >> corfit=intraspotCorrelation(nt_img_lA,design) >> corfit$consensus > [1] 0.7341876 >> fit=lmscFit(nt_img_lAq,design,correlation=corfit$consensus) > > I want to get contrasts "hc - hk", "lc - lk", "hc - lc", "hk - lk" > and also test effect of line and temperature. To do that I write this > command: > > >> contr.matrix=makeContrasts(hc-hk,lc-lk,hc-lc,hk-lk,linia=(hc+hk-lc- lk)/2,temp=(hc+lc-hk-lk)/2,inter=(hc-lc)-(hk-lk),levels=design) > > * I'm not 100% sure that it's correct. > >> contr.fit=contrasts.fit(fit,contr.matrix) >> contr.fit=eBayes(contr.fit) > >> wynik=decideTests(contr.fit,method="global",adjust.method="BH",p.va lue=0.05) >> summary(wynik) > hc - hk lc - lk hc - lc hk - lk linia temp inter > -1 5865 5039 3014 2685 3931 7382 1113 > 0 30922 33433 37177 38480 35896 28364 40776 > 1 6594 4909 3190 2216 3554 7635 1492 > > From that it seem that there is a lot of differentially expressed genes. > I feel that it isn't optimal design, here technical and biological > replications > are treated in the same manner, aren't they? > > I've read about "duplicateCorrelation" command, is it possible to > combine it with single channel analysis? > Or I should rewrite target file (add number of replication) and rewrite > contrasts > (e.g. hc-hk change to "((hc1+hc2+hc3+hc4)-(hk1+hk2+hk3+hk4))/4 > )? > > And if I want to include a dye effect, I should only add column with 1's > to my design, right? > > Thank you for reading of my post. > I'd be very grateful for help. I've tried to analyse this data for a > along time > and I think limma is the best choice. > > Yours sincerely, > > Maciej Jo?czyk > > Maciej Jo?czyk > Department of Plant Molecular Ecophysiology > Institute of Plant Experimental Biology > Faculty of Biology, University of Warsaw > 02-096 Warszawa, Miecznikowa 1 ______________________________________________________________________ The information in this email is confidential and intend...{{dropped:4}}
limma limma • 923 views
ADD COMMENT
0
Entering edit mode
boczniak767 ▴ 720
@maciej-jonczyk-3945
Last seen 2 days ago
Poland
Dear dr Smith and list Members, I use single-channel analysis to deal with loop-design as suggested by Naomi in some of her posts. Here is my targets with number of biological replication (replication of entire scheme). Technical replication is within each replicated scheme. So within scheme all instances of each sample (samples: lc, lk, hc, hk) is from the same isolation (i.e. in each loop each RNA is used three times in different hybridizations). So in my case technical replication include RNA samples, not hybridizations. lines: l, h temperaures: c(cold), k(control) That two are concatenated in target file. Scheme is as follows: lc ---- lk | | hc ---- hk with two more hybridizations, lc vs hk and lk vs hc. This is my targets in original two-channel form (biol_rep states for biological replication): SlideNumber FileName Cy3 Cy5 biol_rep 93 c_093_DH_K_vs_DH_CHex.gpr hk hc 1 104 c_104_DH_CH_vs_DH_Kex.gpr hc hk 2 116 c_116_DHK_vs_DHCHex.gpr hk hc 3 16 c_016_DH_C_vs_DH_Kex.gpr hc hk 4 94 c_094_DH_K_vs_DL_Kex.gpr hk lk 1 105 c_105_DL_K_vs_DH_Kex.gpr lk hk 2 117 c_117_DHK_vs_DLKex.gpr hk lk 3 139 c_139_DL_K_vs_DH_Kex.gpr lk hk 4 92 c_092_DL_CH_vs_DL_Kex.gpr lc lk 1 106 c_106_DL_K_vs_DL_CHex.gpr lk lc 2 118 c_118_DLCH_vs_DLKex.gpr lc lk 3 23 c_023_DL_K_vs_DL_Cex.gpr lk lc 4 95 c_095_DL_CH_vs_DH_CHex.gpr lc hc 1 107 c_107_DH_CH_vs_DL_CHex.gpr hc lc 2 119 c_119_DLCH_vs_DHCHex.gpr lc hc 3 136 c_136_DH_C_vs_DL_Cex.gpr hc lc 4 101 c_101_DL_K_vs_DH_CHex.gpr lk hc 1 103 c_103_DH_CH_vs_DL_Kex.gpr hc lk 2 121 c_121_DLK_vs_DHCHex.gpr lk hc 3 15 c_015_DH_C_vs_DL_Kex.gpr hc lk 4 100 c_100_DH_K_vs_DL_CHex.gpr hk lc 1 102 c_102_DL_CH_vs_DH_Kex.gpr lc hk 2 120 c_120_DHK_vs_DLCHex.gpr hk lc 3 140 c_140_DL_C_vs_DH_Kex.gpr lc hk 4 I hope it clarifies my design. Best regards, Gordon K Smyth <smyth at="" wehi.edu.au=""> nadawca : > Dear Maciej, > > I haven't been able to figure out from this or your previous post > exactly what > your experimental design is. I suspect this is why you haven't got > replies > yet. I can see that you have technical replicates, but I'm not quite > clear > that there is any biological replication. It's also unclear to me why > you need > a single channel analysis. Perhaps you could explain your design a > bit more > explicitly, including a data.frame with separate factors indicating > temperature, maize line, biological rep, and any other factors you > need to take > into account? > > Best wishes > Gordon > > > Date: Tue, 02 Mar 2010 13:01:23 +0100 > > From: mjonczyk at biol.uw.edu.pl > > To: <bioconductor at="" stat.math.ethz.ch=""> > > Cc: Maciej Jo?czyk <mjonczyk at="" biol.uw.edu.pl=""> > > Subject: Re: [BioC] Loop design - biological, technical replication > > and contrasts > > > > > Hi again, > > > > > I apologise for replying to my own post, but it helps keep track if > > someone will be interested. > > > > > I analysed my data with single channel analysis in limma, according > > to > > Chapter 9. of limma usersguide. > > > > > I changed my targets file (to make it more condensed) and removed > > suffix > > which > > identified biological replication. So my targets looks like: > > > > > >nt_trg > > > > SlideNumber FileName Cy3 Cy5 > > 1 93 c_093_DH_K_vs_DH_CHex.gpr hk hc > > 2 104 c_104_DH_CH_vs_DH_Kex.gpr hc hk > > 3 116 c_116_DHK_vs_DHCHex.gpr hk hc > > 4 16 c_016_DH_C_vs_DH_Kex.gpr hc hk > > 5 94 c_094_DH_K_vs_DL_Kex.gpr hk lk > > 6 105 c_105_DL_K_vs_DH_Kex.gpr lk hk > > 7 117 c_117_DHK_vs_DLKex.gpr hk lk > > 8 139 c_139_DL_K_vs_DH_Kex.gpr lk hk > > 9 92 c_092_DL_CH_vs_DL_Kex.gpr lc lk > > 10 106 c_106_DL_K_vs_DL_CHex.gpr lk lc > > 11 118 c_118_DLCH_vs_DLKex.gpr lc lk > > 12 23 c_023_DL_K_vs_DL_Cex.gpr lk lc > > 13 95 c_095_DL_CH_vs_DH_CHex.gpr lc hc > > 14 107 c_107_DH_CH_vs_DL_CHex.gpr hc lc > > 15 119 c_119_DLCH_vs_DHCHex.gpr lc hc > > 16 136 c_136_DH_C_vs_DL_Cex.gpr hc lc > > 17 101 c_101_DL_K_vs_DH_CHex.gpr lk hc > > 18 103 c_103_DH_CH_vs_DL_Kex.gpr hc lk > > 19 121 c_121_DLK_vs_DHCHex.gpr lk hc > > 20 15 c_015_DH_C_vs_DL_Kex.gpr hc lk > > 21 100 c_100_DH_K_vs_DL_CHex.gpr hk lc > > 22 102 c_102_DL_CH_vs_DH_Kex.gpr lc hk > > 23 120 c_120_DHK_vs_DLCHex.gpr hk lc > > 24 140 c_140_DL_C_vs_DH_Kex.gpr lc hk > > > > > > > > I transform it to apropriate form: > > >tgr_sc=targetsA2C(nt_trg) > > >tgr_sc > > > > channel.col SlideNumber FileName Target > > 1.1 1 93 c_093_DH_K_vs_DH_CHex.gpr hk > > 1.2 2 93 c_093_DH_K_vs_DH_CHex.gpr hc > > 2.1 1 104 c_104_DH_CH_vs_DH_Kex.gpr hc > > 2.2 2 104 c_104_DH_CH_vs_DH_Kex.gpr hk > > 3.1 1 116 c_116_DHK_vs_DHCHex.gpr hk > > 3.2 2 116 c_116_DHK_vs_DHCHex.gpr hc > > 4.1 1 16 c_016_DH_C_vs_DH_Kex.gpr hc > > 4.2 2 16 c_016_DH_C_vs_DH_Kex.gpr hk > > 5.1 1 94 c_094_DH_K_vs_DL_Kex.gpr hk > > 5.2 2 94 c_094_DH_K_vs_DL_Kex.gpr lk > > 6.1 1 105 c_105_DL_K_vs_DH_Kex.gpr lk > > 6.2 2 105 c_105_DL_K_vs_DH_Kex.gpr hk > > 7.1 1 117 c_117_DHK_vs_DLKex.gpr hk > > 7.2 2 117 c_117_DHK_vs_DLKex.gpr lk > > 8.1 1 139 c_139_DL_K_vs_DH_Kex.gpr lk > > 8.2 2 139 c_139_DL_K_vs_DH_Kex.gpr hk > > 9.1 1 92 c_092_DL_CH_vs_DL_Kex.gpr lc > > 9.2 2 92 c_092_DL_CH_vs_DL_Kex.gpr lk > > 10.1 1 106 c_106_DL_K_vs_DL_CHex.gpr lk > > 10.2 2 106 c_106_DL_K_vs_DL_CHex.gpr lc > > 11.1 1 118 c_118_DLCH_vs_DLKex.gpr lc > > 11.2 2 118 c_118_DLCH_vs_DLKex.gpr lk > > 12.1 1 23 c_023_DL_K_vs_DL_Cex.gpr lk > > 12.2 2 23 c_023_DL_K_vs_DL_Cex.gpr lc > > 13.1 1 95 c_095_DL_CH_vs_DH_CHex.gpr lc > > 13.2 2 95 c_095_DL_CH_vs_DH_CHex.gpr hc > > 14.1 1 107 c_107_DH_CH_vs_DL_CHex.gpr hc > > 14.2 2 107 c_107_DH_CH_vs_DL_CHex.gpr lc > > 15.1 1 119 c_119_DLCH_vs_DHCHex.gpr lc > > 15.2 2 119 c_119_DLCH_vs_DHCHex.gpr hc > > 16.1 1 136 c_136_DH_C_vs_DL_Cex.gpr hc > > 16.2 2 136 c_136_DH_C_vs_DL_Cex.gpr lc > > 17.1 1 101 c_101_DL_K_vs_DH_CHex.gpr lk > > 17.2 2 101 c_101_DL_K_vs_DH_CHex.gpr hc > > 18.1 1 103 c_103_DH_CH_vs_DL_Kex.gpr hc > > 18.2 2 103 c_103_DH_CH_vs_DL_Kex.gpr lk > > 19.1 1 121 c_121_DLK_vs_DHCHex.gpr lk > > 19.2 2 121 c_121_DLK_vs_DHCHex.gpr hc > > 20.1 1 15 c_015_DH_C_vs_DL_Kex.gpr hc > > 20.2 2 15 c_015_DH_C_vs_DL_Kex.gpr lk > > 21.1 1 100 c_100_DH_K_vs_DL_CHex.gpr hk > > 21.2 2 100 c_100_DH_K_vs_DL_CHex.gpr lc > > 22.1 1 102 c_102_DL_CH_vs_DH_Kex.gpr lc > > 22.2 2 102 c_102_DL_CH_vs_DH_Kex.gpr hk > > 23.1 1 120 c_120_DHK_vs_DLCHex.gpr hk > > 23.2 2 120 c_120_DHK_vs_DLCHex.gpr lc > > 24.1 1 140 c_140_DL_C_vs_DH_Kex.gpr lc > > 24.2 2 140 c_140_DL_C_vs_DH_Kex.gpr hk > > > > > Next, I made design matrix > > > > > >u=unique(tgr_sc$Target) > > >f=factor(tgr_sc$Target,levels=u) > > >design=model.matrix(~0+f) > > >colnames(design)=u > > >design > > > > hk hc lk lc > > 1 1 0 0 0 > > 2 0 1 0 0 > > 3 0 1 0 0 > > 4 1 0 0 0 > > 5 1 0 0 0 > > 6 0 1 0 0 > > 7 0 1 0 0 > > 8 1 0 0 0 > > 9 1 0 0 0 > > 10 0 0 1 0 > > 11 0 0 1 0 > > 12 1 0 0 0 > > 13 1 0 0 0 > > 14 0 0 1 0 > > 15 0 0 1 0 > > 16 1 0 0 0 > > 17 0 0 0 1 > > 18 0 0 1 0 > > 19 0 0 1 0 > > 20 0 0 0 1 > > 21 0 0 0 1 > > 22 0 0 1 0 > > 23 0 0 1 0 > > 24 0 0 0 1 > > 25 0 0 0 1 > > 26 0 1 0 0 > > 27 0 1 0 0 > > 28 0 0 0 1 > > 29 0 0 0 1 > > 30 0 1 0 0 > > 31 0 1 0 0 > > 32 0 0 0 1 > > 33 0 0 1 0 > > 34 0 1 0 0 > > 35 0 1 0 0 > > 36 0 0 1 0 > > 37 0 0 1 0 > > 38 0 1 0 0 > > 39 0 1 0 0 > > 40 0 0 1 0 > > 41 1 0 0 0 > > 42 0 0 0 1 > > 43 0 0 0 1 > > 44 1 0 0 0 > > 45 1 0 0 0 > > 46 0 0 0 1 > > 47 0 0 0 1 > > 48 1 0 0 0 > > attr(,"assign") > > [1] 1 1 1 1 > > attr(,"contrasts") > > attr(,"contrasts")$f > > [1] "contr.treatment" > > > > > *Is it correct form my design? I see, that it simply identifies what > > RNA > > was hybridized on each array. > > > > > >corfit=intraspotCorrelation(nt_img_lA,design) > > >corfit$consensus > > [1] 0.7341876 > > >fit=lmscFit(nt_img_lAq,design,correlation=corfit$consensus) > > > > > I want to get contrasts "hc - hk", "lc - lk", "hc - lc", "hk - lk" > > and also test effect of line and temperature. To do that I write > > this > > command: > > > > > > > > > > >contr.matrix=makeContrasts(hc-hk,lc-lk,hc-lc,hk-lk,linia=(hc+hk-lc- lk)/2,temp=(hc+lc-hk-lk)/2,inter=(hc-lc)-(hk-lk),levels=design) > > > > > * I'm not 100% sure that it's correct. > > > > > >contr.fit=contrasts.fit(fit,contr.matrix) > > >contr.fit=eBayes(contr.fit) > > > > > > > >wynik=decideTests(contr.fit,method="global",adjust.method="BH",p.valu e=0.05) > > >summary(wynik) > > hc - hk lc - lk hc - lc hk - lk linia temp inter > > -1 5865 5039 3014 2685 3931 7382 1113 > > 0 30922 33433 37177 38480 35896 28364 40776 > > 1 6594 4909 3190 2216 3554 7635 1492 > > > > > From that it seem that there is a lot of differentially expressed > > genes. > > I feel that it isn't optimal design, here technical and biological > > replications > > are treated in the same manner, aren't they? > > > > > I've read about "duplicateCorrelation" command, is it possible to > > combine it with single channel analysis? > > Or I should rewrite target file (add number of replication) and > > rewrite > > contrasts > > (e.g. hc-hk change to "((hc1+hc2+hc3+hc4)-(hk1+hk2+hk3+hk4))/4 > > )? > > > > > And if I want to include a dye effect, I should only add column with > > 1's > > to my design, right? > > > > > Thank you for reading of my post. > > I'd be very grateful for help. I've tried to analyse this data for a > > along time > > and I think limma is the best choice. > > > > > Yours sincerely, > > > > > Maciej Jo?czyk > > > > > Maciej Jo?czyk > > Department of Plant Molecular Ecophysiology > > Institute of Plant Experimental Biology > > Faculty of Biology, University of Warsaw > > 02-096 Warszawa, Miecznikowa 1 > > ______________________________________________________________________ > The information in this email is confidential and intended solely for > the addressee. > You must not disclose, forward, print or use it without the permission > of the sender. > ______________________________________________________________________ > > -- > This message has been 'sanitized'. This means that potentially > dangerous content has been rewritten or removed. The following > log describes which actions were taken. > > [ score: 10 ] > 00000 Split unusually long Date: header. > > Anomy 0.0.0 : sanitizer.pl > $Id: Sanitizer.pm,v 1.17 2001/08/07 15:16:46 bre Exp $ > Maciej Jo?czyk Department of Plant Molecular Ecophysiology Institute of Plant Experimental Biology Faculty of Biology, University of Warsaw 02-096 Warszawa, Miecznikowa 1 ___________________________________ NOCC, http://nocc.sourceforge.net
ADD COMMENT
0
Entering edit mode
Dear Maciej, You don't say, but I assume that lines l and h must be biologically independent. If this is true, then your experiment has 3 levels of variability: line, isolation and array. limma can only handle 2 levels. You could analyse data this in limma, treating biol_rep as a blocking variable, as in Section 8.2 of the User's Guide, but that would ignore the fact that h and l are biologically separate. Otherwise, try the maanova package. Best wishes Gordon ----------------------------------------------- Associate Professor Gordon K Smyth, NHMRC Senior Research Fellow, Bioinformatics Division, Walter and Eliza Hall Institute of Medical Research, 1G Royal Parade, Parkville, Vic 3052, Australia. Fax (03) 9347 0852, smyth at wehi.edu.au http://www.wehi.edu.au http://www.statsci.org/smyth On Sat, 6 Mar 2010, Maciej Jo?czyk wrote: > Dear dr Smith and list Members, > > I use single-channel analysis to deal with loop-design as suggested by > Naomi in some of her posts. > > Here is my targets with number of biological replication (replication of > entire scheme). Technical replication is within each replicated scheme. > So within scheme all instances of each sample (samples: lc, lk, hc, hk) > is from the same isolation (i.e. in each loop each RNA is used three > times in different hybridizations). > > So in my case technical replication include RNA samples, not > hybridizations. > > lines: l, h > temperaures: c(cold), k(control) > That two are concatenated in target file. > > Scheme is as follows: > > lc ---- lk > | | > hc ---- hk > > with two more hybridizations, lc vs hk and lk vs hc. > > This is my targets in original two-channel form (biol_rep states for > biological replication): > > SlideNumber FileName Cy3 Cy5 biol_rep > 93 c_093_DH_K_vs_DH_CHex.gpr hk hc 1 > 104 c_104_DH_CH_vs_DH_Kex.gpr hc hk 2 > 116 c_116_DHK_vs_DHCHex.gpr hk hc 3 > 16 c_016_DH_C_vs_DH_Kex.gpr hc hk 4 > 94 c_094_DH_K_vs_DL_Kex.gpr hk lk 1 > 105 c_105_DL_K_vs_DH_Kex.gpr lk hk 2 > 117 c_117_DHK_vs_DLKex.gpr hk lk 3 > 139 c_139_DL_K_vs_DH_Kex.gpr lk hk 4 > 92 c_092_DL_CH_vs_DL_Kex.gpr lc lk 1 > 106 c_106_DL_K_vs_DL_CHex.gpr lk lc 2 > 118 c_118_DLCH_vs_DLKex.gpr lc lk 3 > 23 c_023_DL_K_vs_DL_Cex.gpr lk lc 4 > 95 c_095_DL_CH_vs_DH_CHex.gpr lc hc 1 > 107 c_107_DH_CH_vs_DL_CHex.gpr hc lc 2 > 119 c_119_DLCH_vs_DHCHex.gpr lc hc 3 > 136 c_136_DH_C_vs_DL_Cex.gpr hc lc 4 > 101 c_101_DL_K_vs_DH_CHex.gpr lk hc 1 > 103 c_103_DH_CH_vs_DL_Kex.gpr hc lk 2 > 121 c_121_DLK_vs_DHCHex.gpr lk hc 3 > 15 c_015_DH_C_vs_DL_Kex.gpr hc lk 4 > 100 c_100_DH_K_vs_DL_CHex.gpr hk lc 1 > 102 c_102_DL_CH_vs_DH_Kex.gpr lc hk 2 > 120 c_120_DHK_vs_DLCHex.gpr hk lc 3 > 140 c_140_DL_C_vs_DH_Kex.gpr lc hk 4 > > I hope it clarifies my design. > > Best regards, > > > Gordon K Smyth <smyth at="" wehi.edu.au=""> nadawca : > >> Dear Maciej, >> >> I haven't been able to figure out from this or your previous post >> exactly what >> your experimental design is. I suspect this is why you haven't got >> replies >> yet. I can see that you have technical replicates, but I'm not quite >> clear >> that there is any biological replication. It's also unclear to me why >> you need >> a single channel analysis. Perhaps you could explain your design a >> bit more >> explicitly, including a data.frame with separate factors indicating >> temperature, maize line, biological rep, and any other factors you >> need to take >> into account? >> >> Best wishes >> Gordon >> >>> Date: Tue, 02 Mar 2010 13:01:23 +0100 >>> From: mjonczyk at biol.uw.edu.pl >>> To: <bioconductor at="" stat.math.ethz.ch=""> >>> Cc: Maciej Jo?czyk <mjonczyk at="" biol.uw.edu.pl=""> >>> Subject: Re: [BioC] Loop design - biological, technical replication >>> and contrasts >>>> >>> Hi again, >>>> >>> I apologise for replying to my own post, but it helps keep track if >>> someone will be interested. >>>> >>> I analysed my data with single channel analysis in limma, according >>> to >>> Chapter 9. of limma usersguide. >>>> >>> I changed my targets file (to make it more condensed) and removed >>> suffix >>> which >>> identified biological replication. So my targets looks like: >>>> >>>> nt_trg >>> >>> SlideNumber FileName Cy3 Cy5 >>> 1 93 c_093_DH_K_vs_DH_CHex.gpr hk hc >>> 2 104 c_104_DH_CH_vs_DH_Kex.gpr hc hk >>> 3 116 c_116_DHK_vs_DHCHex.gpr hk hc >>> 4 16 c_016_DH_C_vs_DH_Kex.gpr hc hk >>> 5 94 c_094_DH_K_vs_DL_Kex.gpr hk lk >>> 6 105 c_105_DL_K_vs_DH_Kex.gpr lk hk >>> 7 117 c_117_DHK_vs_DLKex.gpr hk lk >>> 8 139 c_139_DL_K_vs_DH_Kex.gpr lk hk >>> 9 92 c_092_DL_CH_vs_DL_Kex.gpr lc lk >>> 10 106 c_106_DL_K_vs_DL_CHex.gpr lk lc >>> 11 118 c_118_DLCH_vs_DLKex.gpr lc lk >>> 12 23 c_023_DL_K_vs_DL_Cex.gpr lk lc >>> 13 95 c_095_DL_CH_vs_DH_CHex.gpr lc hc >>> 14 107 c_107_DH_CH_vs_DL_CHex.gpr hc lc >>> 15 119 c_119_DLCH_vs_DHCHex.gpr lc hc >>> 16 136 c_136_DH_C_vs_DL_Cex.gpr hc lc >>> 17 101 c_101_DL_K_vs_DH_CHex.gpr lk hc >>> 18 103 c_103_DH_CH_vs_DL_Kex.gpr hc lk >>> 19 121 c_121_DLK_vs_DHCHex.gpr lk hc >>> 20 15 c_015_DH_C_vs_DL_Kex.gpr hc lk >>> 21 100 c_100_DH_K_vs_DL_CHex.gpr hk lc >>> 22 102 c_102_DL_CH_vs_DH_Kex.gpr lc hk >>> 23 120 c_120_DHK_vs_DLCHex.gpr hk lc >>> 24 140 c_140_DL_C_vs_DH_Kex.gpr lc hk >>>> >>>> >>> I transform it to apropriate form: >>>> tgr_sc=targetsA2C(nt_trg) >>>> tgr_sc >>> >>> channel.col SlideNumber FileName Target >>> 1.1 1 93 c_093_DH_K_vs_DH_CHex.gpr hk >>> 1.2 2 93 c_093_DH_K_vs_DH_CHex.gpr hc >>> 2.1 1 104 c_104_DH_CH_vs_DH_Kex.gpr hc >>> 2.2 2 104 c_104_DH_CH_vs_DH_Kex.gpr hk >>> 3.1 1 116 c_116_DHK_vs_DHCHex.gpr hk >>> 3.2 2 116 c_116_DHK_vs_DHCHex.gpr hc >>> 4.1 1 16 c_016_DH_C_vs_DH_Kex.gpr hc >>> 4.2 2 16 c_016_DH_C_vs_DH_Kex.gpr hk >>> 5.1 1 94 c_094_DH_K_vs_DL_Kex.gpr hk >>> 5.2 2 94 c_094_DH_K_vs_DL_Kex.gpr lk >>> 6.1 1 105 c_105_DL_K_vs_DH_Kex.gpr lk >>> 6.2 2 105 c_105_DL_K_vs_DH_Kex.gpr hk >>> 7.1 1 117 c_117_DHK_vs_DLKex.gpr hk >>> 7.2 2 117 c_117_DHK_vs_DLKex.gpr lk >>> 8.1 1 139 c_139_DL_K_vs_DH_Kex.gpr lk >>> 8.2 2 139 c_139_DL_K_vs_DH_Kex.gpr hk >>> 9.1 1 92 c_092_DL_CH_vs_DL_Kex.gpr lc >>> 9.2 2 92 c_092_DL_CH_vs_DL_Kex.gpr lk >>> 10.1 1 106 c_106_DL_K_vs_DL_CHex.gpr lk >>> 10.2 2 106 c_106_DL_K_vs_DL_CHex.gpr lc >>> 11.1 1 118 c_118_DLCH_vs_DLKex.gpr lc >>> 11.2 2 118 c_118_DLCH_vs_DLKex.gpr lk >>> 12.1 1 23 c_023_DL_K_vs_DL_Cex.gpr lk >>> 12.2 2 23 c_023_DL_K_vs_DL_Cex.gpr lc >>> 13.1 1 95 c_095_DL_CH_vs_DH_CHex.gpr lc >>> 13.2 2 95 c_095_DL_CH_vs_DH_CHex.gpr hc >>> 14.1 1 107 c_107_DH_CH_vs_DL_CHex.gpr hc >>> 14.2 2 107 c_107_DH_CH_vs_DL_CHex.gpr lc >>> 15.1 1 119 c_119_DLCH_vs_DHCHex.gpr lc >>> 15.2 2 119 c_119_DLCH_vs_DHCHex.gpr hc >>> 16.1 1 136 c_136_DH_C_vs_DL_Cex.gpr hc >>> 16.2 2 136 c_136_DH_C_vs_DL_Cex.gpr lc >>> 17.1 1 101 c_101_DL_K_vs_DH_CHex.gpr lk >>> 17.2 2 101 c_101_DL_K_vs_DH_CHex.gpr hc >>> 18.1 1 103 c_103_DH_CH_vs_DL_Kex.gpr hc >>> 18.2 2 103 c_103_DH_CH_vs_DL_Kex.gpr lk >>> 19.1 1 121 c_121_DLK_vs_DHCHex.gpr lk >>> 19.2 2 121 c_121_DLK_vs_DHCHex.gpr hc >>> 20.1 1 15 c_015_DH_C_vs_DL_Kex.gpr hc >>> 20.2 2 15 c_015_DH_C_vs_DL_Kex.gpr lk >>> 21.1 1 100 c_100_DH_K_vs_DL_CHex.gpr hk >>> 21.2 2 100 c_100_DH_K_vs_DL_CHex.gpr lc >>> 22.1 1 102 c_102_DL_CH_vs_DH_Kex.gpr lc >>> 22.2 2 102 c_102_DL_CH_vs_DH_Kex.gpr hk >>> 23.1 1 120 c_120_DHK_vs_DLCHex.gpr hk >>> 23.2 2 120 c_120_DHK_vs_DLCHex.gpr lc >>> 24.1 1 140 c_140_DL_C_vs_DH_Kex.gpr lc >>> 24.2 2 140 c_140_DL_C_vs_DH_Kex.gpr hk >>>> >>> Next, I made design matrix >>>> >>>> u=unique(tgr_sc$Target) >>>> f=factor(tgr_sc$Target,levels=u) >>>> design=model.matrix(~0+f) >>>> colnames(design)=u >>>> design >>> >>> hk hc lk lc >>> 1 1 0 0 0 >>> 2 0 1 0 0 >>> 3 0 1 0 0 >>> 4 1 0 0 0 >>> 5 1 0 0 0 >>> 6 0 1 0 0 >>> 7 0 1 0 0 >>> 8 1 0 0 0 >>> 9 1 0 0 0 >>> 10 0 0 1 0 >>> 11 0 0 1 0 >>> 12 1 0 0 0 >>> 13 1 0 0 0 >>> 14 0 0 1 0 >>> 15 0 0 1 0 >>> 16 1 0 0 0 >>> 17 0 0 0 1 >>> 18 0 0 1 0 >>> 19 0 0 1 0 >>> 20 0 0 0 1 >>> 21 0 0 0 1 >>> 22 0 0 1 0 >>> 23 0 0 1 0 >>> 24 0 0 0 1 >>> 25 0 0 0 1 >>> 26 0 1 0 0 >>> 27 0 1 0 0 >>> 28 0 0 0 1 >>> 29 0 0 0 1 >>> 30 0 1 0 0 >>> 31 0 1 0 0 >>> 32 0 0 0 1 >>> 33 0 0 1 0 >>> 34 0 1 0 0 >>> 35 0 1 0 0 >>> 36 0 0 1 0 >>> 37 0 0 1 0 >>> 38 0 1 0 0 >>> 39 0 1 0 0 >>> 40 0 0 1 0 >>> 41 1 0 0 0 >>> 42 0 0 0 1 >>> 43 0 0 0 1 >>> 44 1 0 0 0 >>> 45 1 0 0 0 >>> 46 0 0 0 1 >>> 47 0 0 0 1 >>> 48 1 0 0 0 >>> attr(,"assign") >>> [1] 1 1 1 1 >>> attr(,"contrasts") >>> attr(,"contrasts")$f >>> [1] "contr.treatment" >>>> >>> *Is it correct form my design? I see, that it simply identifies what >>> RNA >>> was hybridized on each array. >>>> >>>> corfit=intraspotCorrelation(nt_img_lA,design) >>>> corfit$consensus >>> [1] 0.7341876 >>>> fit=lmscFit(nt_img_lAq,design,correlation=corfit$consensus) >>>> >>> I want to get contrasts "hc - hk", "lc - lk", "hc - lc", "hk - lk" >>> and also test effect of line and temperature. To do that I write >>> this >>> command: >>>> >>>> >>> >>> >> contr.matrix=makeContrasts(hc-hk,lc-lk,hc-lc,hk-lk,linia=(hc+hk-lc- lk)/2,temp=(hc+lc-hk-lk)/2,inter=(hc-lc)-(hk-lk),levels=design) >>>> >>> * I'm not 100% sure that it's correct. >>>> >>>> contr.fit=contrasts.fit(fit,contr.matrix) >>>> contr.fit=eBayes(contr.fit) >>>> >>> >>> >> wynik=decideTests(contr.fit,method="global",adjust.method="BH",p.va lue=0.05) >>>> summary(wynik) >>> hc - hk lc - lk hc - lc hk - lk linia temp inter >>> -1 5865 5039 3014 2685 3931 7382 1113 >>> 0 30922 33433 37177 38480 35896 28364 40776 >>> 1 6594 4909 3190 2216 3554 7635 1492 >>>> >>> From that it seem that there is a lot of differentially expressed >>> genes. >>> I feel that it isn't optimal design, here technical and biological >>> replications >>> are treated in the same manner, aren't they? >>>> >>> I've read about "duplicateCorrelation" command, is it possible to >>> combine it with single channel analysis? >>> Or I should rewrite target file (add number of replication) and >>> rewrite >>> contrasts >>> (e.g. hc-hk change to "((hc1+hc2+hc3+hc4)-(hk1+hk2+hk3+hk4))/4 >>> )? >>>> >>> And if I want to include a dye effect, I should only add column with >>> 1's >>> to my design, right? >>>> >>> Thank you for reading of my post. >>> I'd be very grateful for help. I've tried to analyse this data for a >>> along time >>> and I think limma is the best choice. >>>> >>> Yours sincerely, >>>> >>> Maciej Jo?czyk >>>> >>> Maciej Jo?czyk >>> Department of Plant Molecular Ecophysiology >>> Institute of Plant Experimental Biology >>> Faculty of Biology, University of Warsaw >>> 02-096 Warszawa, Miecznikowa 1 >> >> ______________________________________________________________________ >> The information in this email is confidential and intended solely for >> the addressee. >> You must not disclose, forward, print or use it without the permission >> of the sender. >> ______________________________________________________________________ >> >> -- >> This message has been 'sanitized'. This means that potentially >> dangerous content has been rewritten or removed. The following >> log describes which actions were taken. >> >> [ score: 10 ] >> 00000 Split unusually long Date: header. >> >> Anomy 0.0.0 : sanitizer.pl >> $Id: Sanitizer.pm,v 1.17 2001/08/07 15:16:46 bre Exp $ >> > > > Maciej Jo?czyk > Department of Plant Molecular Ecophysiology > Institute of Plant Experimental Biology > Faculty of Biology, University of Warsaw > 02-096 Warszawa, Miecznikowa 1 > > > > ___________________________________ > NOCC, http://nocc.sourceforge.net > > > > ______________________________________________________________________ The information in this email is confidential and intend...{{dropped:5}}
ADD REPLY

Login before adding your answer.

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