Re: [aroma.affymetrix] Re: CbsModel parameters
Thanks for the parallel note! I knew it existed, but hadn't checked the implementation yet, deferring it to a soon-to-be-done pipeline review. However, the future::plan("multicore") ... makes it very simple; seems to work great. Michael. -- -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example. You received this message because you are subscribed to the Google Groups "aroma.affymetrix" group with website http://www.aroma-project.org/. To post to this group, send email to aroma-affymetrix@googlegroups.com To unsubscribe and other options, go to http://www.aroma-project.org/forum/ --- You received this message because you are subscribed to the Google Groups "aroma.affymetrix" group. To unsubscribe from this group and stop receiving emails from it, send an email to aroma-affymetrix+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: [aroma.affymetrix] Re: CbsModel parameters
Hi, I've bbc:ed Venkat since I don't know if he's on this list or not. I don't have any particular suggestions for tweaking the default DNAcopy::segment() CBS parameters. If you missed it, both aroma.affymetrix and PSCBS now supports parallel process to some extent, cf. http://www.aroma-project.org/howtos/parallel_processing/ /Henrik On Tue, Feb 2, 2016 at 6:28 AM, mbaudiswrote: > Hi Hendrik, Venkat, > > we're about to start a large processing run (>20k Affy arrays from GEO, > various platforms). Good time to review/update our old pipeline ... > > What is the best way/recomm. parameters now for the min.width argument, and > has the cbs part been modified? Any recommendation to do platform specific > adjustements (majority are 250k & SNP6)? > > Pointers appreciated! > > Thanks & best, > > Michael. > > On Wednesday, October 27, 2010 at 9:19:24 PM UTC+2, Venkat wrote: >> >> This can happen occasionally. The min.width argument specifies the >> minimum number of probes in the minor arc of the circular (remember this is >> circular binary segmentation). So if you can get 2 probes from one end and >> 3 from the other to be significantly different the middle you will get a >> significant result and a segmentation. I need to change the code in order >> to eliminate this possibility. >> >> Venkat >> >> >> On Wed, Oct 27, 2010 at 2:32 PM, Henrik Bengtsson >> wrote: >>> >>> Are you sure you are not picking up old results, that is, did you use >>> fit(cbs, ..., force=TRUE) or simply did you remove the previous >>> segmentation results in cbsData/? >>> >>> You can troubleshoot with one array and one chromosome, e.g. >>> >>> fit(cbs, arrays=6, chromosomes=16, min.width=5, undo.splits="sdundo", >>> undo.SD=1, force=TRUE, verbose=-10); >>> >>> /Henrik >>> >>> On Wed, Oct 27, 2010 at 11:20 AM, Kai wrote: >>> > Hi Henrik, >>> > >>> > Thank you for your reply. However, I followed your instructions but >>> > still got segments with only 2 markers: >>> > >>> > These are the codes I ran: >>> > >>> > cbs = CbsModel(ds); >>> > cbs$.calculateRatios = FALSE; >>> > fit(cbs, chromosomes=c(1:23), min.width=5, undo.splits="sdundo", >>> > undo.SD=1, verbose=-10); >>> > ce = ChromosomeExplorer(cbs); >>> > process(ce,chromosomes=c(1:23)); >>> > >>> > These are what I found out in the results (there are a total of 4 >>> > samples): >>> > >>> >> min(getRegions(cbs)[[1]][,5]) >>> > [1] 5 >>> >> min(getRegions(cbs)[[2]][,5]) >>> > [1] 2 >>> >> min(getRegions(cbs)[[3]][,5]) >>> > [1] 2 >>> >> min(getRegions(cbs)[[4]][,5]) >>> > [1] 2 >>> >> which(getRegions(cbs)[[4]][,5]==2) >>> > [1] 52 139 >>> >> getRegions(cbs)[[4]][139,1:5] >>> >chromosomestart stop mean count >>> > 139 16 45057510 45057696 -1.427 2 >>> > >>> > It seems to me that min.width=5 worked only in the first sample. Do >>> > you have any idea on this? Thanks! >>> > >>> > Best, >>> > Kai >>> > >>> > >>> > On Oct 26, 9:09 pm, Henrik Bengtsson >> > project.org> wrote: >>> >> I forgot to say that in the next release of aroma.core package, you >>> >> will be able to specify additional arguments when you setup the CBS >>> >> model: >>> >> >>> >> cbs <- CbsModel(ds, min.width=5); >>> >> >>> >> ...but until then you have to stick with the below workaround. >>> >> >>> >> /Henrik >>> >> >>> >> On Tue, Oct 26, 2010 at 9:07 PM, hb wrote: >>> >> > Hi, >>> >> >>> >> > sorry my mistake. I meant to write that you should pass the >>> >> > additional arguments to fit() for the CbsModel (not process()), e.g. >>> >> >>> >> > cbs <- CbsModel(ds); >>> >> > cbs$.calculateRatios <- FALSE; >>> >> > fit(cbs, chromosomes=1:23, min.width=5, verbose=-10); >>> >> >>> >> > This will (explicitly) fit the segmentation model. Have a look at >>> >> > the verbose output; you'll see that "min.width" should show up in the >>> >> > output >>> >> > just before the DNAcopy segment() is called. >>> >> >>> >> > After you've done the segmentation for all of you arrays and >>> >> > chromosomes, you can have the ChromosomeExplorer generate the report >>> >> > for you >>> >> > as usual, i.e. >>> >> >>> >> > ce <- ChromosomeExplorer(cbs); >>> >> > process(ce, chromosomes=1:23); >>> >> >>> >> > Note that in your case you have to either delete already generated >>> >> > CBS results, or use fit(..., force=TRUE), in order for aroma.* not to >>> >> > pick >>> >> > up the old segmentation. You also need to delete the already generated >>> >> > PNG >>> >> > files for the ChromosomeExplorer under reports/... >>> >> >>> >> > On Tue, Oct 26, 2010 at 4:43 PM, Kai wrote: >>> >> >> Hi Henrik, >>> >> >>> >> >> Thank you very much for your response. However, I tried the >>> >> >> following >>> >> >> codes to set the minimal number of marker to 5, but the results I >>> >> >> got >>> >> >> still contain segments with only 2 markers ... >>> >> >>> >> >> cbs =
Re: [aroma.affymetrix] Re: CbsModel parameters
Hi Hendrik, Venkat, we're about to start a large processing run (>20k Affy arrays from GEO, various platforms). Good time to review/update our old pipeline ... What is the best way/recomm. parameters now for the min.width argument, and has the cbs part been modified? Any recommendation to do platform specific adjustements (majority are 250k & SNP6)? Pointers appreciated! Thanks & best, Michael. On Wednesday, October 27, 2010 at 9:19:24 PM UTC+2, Venkat wrote: > > This can happen occasionally. The min.width argument specifies the > minimum number of probes in the minor arc of the circular (remember this is > circular binary segmentation). So if you can get 2 probes from one end and > 3 from the other to be significantly different the middle you will get a > significant result and a segmentation. I need to change the code in order > to eliminate this possibility. > > Venkat > > > On Wed, Oct 27, 2010 at 2:32 PM, Henrik Bengtsson < > henrik.b...@aroma-project.org > wrote: > >> Are you sure you are not picking up old results, that is, did you use >> fit(cbs, ..., force=TRUE) or simply did you remove the previous >> segmentation results in cbsData/? >> >> You can troubleshoot with one array and one chromosome, e.g. >> >> fit(cbs, arrays=6, chromosomes=16, min.width=5, undo.splits="sdundo", >> undo.SD=1, force=TRUE, verbose=-10); >> >> /Henrik >> >> On Wed, Oct 27, 2010 at 11:20 AM, Kai>> wrote: >> > Hi Henrik, >> > >> > Thank you for your reply. However, I followed your instructions but >> > still got segments with only 2 markers: >> > >> > These are the codes I ran: >> > >> > cbs = CbsModel(ds); >> > cbs$.calculateRatios = FALSE; >> > fit(cbs, chromosomes=c(1:23), min.width=5, undo.splits="sdundo", >> > undo.SD=1, verbose=-10); >> > ce = ChromosomeExplorer(cbs); >> > process(ce,chromosomes=c(1:23)); >> > >> > These are what I found out in the results (there are a total of 4 >> > samples): >> > >> >> min(getRegions(cbs)[[1]][,5]) >> > [1] 5 >> >> min(getRegions(cbs)[[2]][,5]) >> > [1] 2 >> >> min(getRegions(cbs)[[3]][,5]) >> > [1] 2 >> >> min(getRegions(cbs)[[4]][,5]) >> > [1] 2 >> >> which(getRegions(cbs)[[4]][,5]==2) >> > [1] 52 139 >> >> getRegions(cbs)[[4]][139,1:5] >> >chromosomestart stop mean count >> > 139 16 45057510 45057696 -1.427 2 >> > >> > It seems to me that min.width=5 worked only in the first sample. Do >> > you have any idea on this? Thanks! >> > >> > Best, >> > Kai >> > >> > >> > On Oct 26, 9:09 pm, Henrik Bengtsson > > project.org> wrote: >> >> I forgot to say that in the next release of aroma.core package, you >> >> will be able to specify additional arguments when you setup the CBS >> >> model: >> >> >> >> cbs <- CbsModel(ds, min.width=5); >> >> >> >> ...but until then you have to stick with the below workaround. >> >> >> >> /Henrik >> >> >> >> On Tue, Oct 26, 2010 at 9:07 PM, hb wrote: >> >> > Hi, >> >> >> >> > sorry my mistake. I meant to write that you should pass the >> additional arguments to fit() for the CbsModel (not process()), e.g. >> >> >> >> > cbs <- CbsModel(ds); >> >> > cbs$.calculateRatios <- FALSE; >> >> > fit(cbs, chromosomes=1:23, min.width=5, verbose=-10); >> >> >> >> > This will (explicitly) fit the segmentation model. Have a look at >> the verbose output; you'll see that "min.width" should show up in the >> output just before the DNAcopy segment() is called. >> >> >> >> > After you've done the segmentation for all of you arrays and >> chromosomes, you can have the ChromosomeExplorer generate the report for >> you as usual, i.e. >> >> >> >> > ce <- ChromosomeExplorer(cbs); >> >> > process(ce, chromosomes=1:23); >> >> >> >> > Note that in your case you have to either delete already generated >> CBS results, or use fit(..., force=TRUE), in order for aroma.* not to pick >> up the old segmentation. You also need to delete the already generated PNG >> files for the ChromosomeExplorer under reports/... >> >> >> >> > On Tue, Oct 26, 2010 at 4:43 PM, Kai wrote: >> >> >> Hi Henrik, >> >> >> >> >> Thank you very much for your response. However, I tried the >> following >> >> >> codes to set the minimal number of marker to 5, but the results I >> got >> >> >> still contain segments with only 2 markers ... >> >> >> >> >> cbs = CbsModel(ds); >> >> >> cbs$.calculateRatios = FALSE; >> >> >> ce = ChromosomeExplorer(cbs); >> >> >> process(ce,chromosomes=c(1:23),min.width=5); >> >> >> >> >> I am not clear where I should put "min.width=5"? If I do >> >> >> "process(cbs,min.width=5)" first, how can I send the results to be >> >> >> displayed by chromosome explorer? >> >> >> >> >> Thanks again for your help. I look forward to hearing from you soon. >> >> >> >> >> Best, >> >> >> Kai >> >> >> >> >> On Sep 27, 9:47 pm, Henrik Bengtsson >> >> >> wrote: >> >> >>> Hi. >> >> >> >> >>> On Mon, Sep 27, 2010 at 4:51 PM, Kai
Re: [aroma.affymetrix] Re: CbsModel parameters
Are you sure you are not picking up old results, that is, did you use fit(cbs, ..., force=TRUE) or simply did you remove the previous segmentation results in cbsData/? You can troubleshoot with one array and one chromosome, e.g. fit(cbs, arrays=6, chromosomes=16, min.width=5, undo.splits=sdundo, undo.SD=1, force=TRUE, verbose=-10); /Henrik On Wed, Oct 27, 2010 at 11:20 AM, Kai wangz...@gmail.com wrote: Hi Henrik, Thank you for your reply. However, I followed your instructions but still got segments with only 2 markers: These are the codes I ran: cbs = CbsModel(ds); cbs$.calculateRatios = FALSE; fit(cbs, chromosomes=c(1:23), min.width=5, undo.splits=sdundo, undo.SD=1, verbose=-10); ce = ChromosomeExplorer(cbs); process(ce,chromosomes=c(1:23)); These are what I found out in the results (there are a total of 4 samples): min(getRegions(cbs)[[1]][,5]) [1] 5 min(getRegions(cbs)[[2]][,5]) [1] 2 min(getRegions(cbs)[[3]][,5]) [1] 2 min(getRegions(cbs)[[4]][,5]) [1] 2 which(getRegions(cbs)[[4]][,5]==2) [1] 52 139 getRegions(cbs)[[4]][139,1:5] chromosome start stop mean count 139 16 45057510 45057696 -1.427 2 It seems to me that min.width=5 worked only in the first sample. Do you have any idea on this? Thanks! Best, Kai On Oct 26, 9:09 pm, Henrik Bengtsson henrik.bengts...@aroma- project.org wrote: I forgot to say that in the next release of aroma.core package, you will be able to specify additional arguments when you setup the CBS model: cbs - CbsModel(ds, min.width=5); ...but until then you have to stick with the below workaround. /Henrik On Tue, Oct 26, 2010 at 9:07 PM, hb h...@biostat.ucsf.edu wrote: Hi, sorry my mistake. I meant to write that you should pass the additional arguments to fit() for the CbsModel (not process()), e.g. cbs - CbsModel(ds); cbs$.calculateRatios - FALSE; fit(cbs, chromosomes=1:23, min.width=5, verbose=-10); This will (explicitly) fit the segmentation model. Have a look at the verbose output; you'll see that min.width should show up in the output just before the DNAcopy segment() is called. After you've done the segmentation for all of you arrays and chromosomes, you can have the ChromosomeExplorer generate the report for you as usual, i.e. ce - ChromosomeExplorer(cbs); process(ce, chromosomes=1:23); Note that in your case you have to either delete already generated CBS results, or use fit(..., force=TRUE), in order for aroma.* not to pick up the old segmentation. You also need to delete the already generated PNG files for the ChromosomeExplorer under reports/... On Tue, Oct 26, 2010 at 4:43 PM, Kai wangz...@gmail.com wrote: Hi Henrik, Thank you very much for your response. However, I tried the following codes to set the minimal number of marker to 5, but the results I got still contain segments with only 2 markers ... cbs = CbsModel(ds); cbs$.calculateRatios = FALSE; ce = ChromosomeExplorer(cbs); process(ce,chromosomes=c(1:23),min.width=5); I am not clear where I should put min.width=5? If I do process(cbs,min.width=5) first, how can I send the results to be displayed by chromosome explorer? Thanks again for your help. I look forward to hearing from you soon. Best, Kai On Sep 27, 9:47 pm, Henrik Bengtsson henrik.bengts...@gmail.com wrote: Hi. On Mon, Sep 27, 2010 at 4:51 PM, Kai wangz...@gmail.com wrote: Hi Henrik, I was wondering whether there is a way I can fine tune the behavior of CbsModel. Sometimes the default algorithm produces too many small fragments right next to each other without much separation in mean copy numbers. Is there a way to control how smooth the segmentation results are? Any additional arguments (in ...) that you pass to process(cbs, ...) will be passed down to the DNAcopy::segment(), which is the function doing the actual segmentation. For more details on how fine tuning the CBS algorithm, see help(segment, package=DNAcopy). You may also want to contact the authors of that method/package. /Henrik Thanks a lot! Best, Kai -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example. You received this message because you are subscribed to the Google Groups aroma.affymetrix group with websitehttp://www.aroma-project.org/. To post to this group, send email to aroma-affymetrix@googlegroups.com To unsubscribe and other options, go tohttp://www.aroma-project.org/forum/ -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example. You received this message because you are subscribed to the Google Groups aroma.affymetrix group
Re: [aroma.affymetrix] Re: CbsModel parameters
This can happen occasionally. The min.width argument specifies the minimum number of probes in the minor arc of the circular (remember this is circular binary segmentation). So if you can get 2 probes from one end and 3 from the other to be significantly different the middle you will get a significant result and a segmentation. I need to change the code in order to eliminate this possibility. Venkat On Wed, Oct 27, 2010 at 2:32 PM, Henrik Bengtsson henrik.bengts...@aroma-project.org wrote: Are you sure you are not picking up old results, that is, did you use fit(cbs, ..., force=TRUE) or simply did you remove the previous segmentation results in cbsData/? You can troubleshoot with one array and one chromosome, e.g. fit(cbs, arrays=6, chromosomes=16, min.width=5, undo.splits=sdundo, undo.SD=1, force=TRUE, verbose=-10); /Henrik On Wed, Oct 27, 2010 at 11:20 AM, Kai wangz...@gmail.com wrote: Hi Henrik, Thank you for your reply. However, I followed your instructions but still got segments with only 2 markers: These are the codes I ran: cbs = CbsModel(ds); cbs$.calculateRatios = FALSE; fit(cbs, chromosomes=c(1:23), min.width=5, undo.splits=sdundo, undo.SD=1, verbose=-10); ce = ChromosomeExplorer(cbs); process(ce,chromosomes=c(1:23)); These are what I found out in the results (there are a total of 4 samples): min(getRegions(cbs)[[1]][,5]) [1] 5 min(getRegions(cbs)[[2]][,5]) [1] 2 min(getRegions(cbs)[[3]][,5]) [1] 2 min(getRegions(cbs)[[4]][,5]) [1] 2 which(getRegions(cbs)[[4]][,5]==2) [1] 52 139 getRegions(cbs)[[4]][139,1:5] chromosomestart stop mean count 139 16 45057510 45057696 -1.427 2 It seems to me that min.width=5 worked only in the first sample. Do you have any idea on this? Thanks! Best, Kai On Oct 26, 9:09 pm, Henrik Bengtsson henrik.bengts...@aroma- project.org wrote: I forgot to say that in the next release of aroma.core package, you will be able to specify additional arguments when you setup the CBS model: cbs - CbsModel(ds, min.width=5); ...but until then you have to stick with the below workaround. /Henrik On Tue, Oct 26, 2010 at 9:07 PM, hb h...@biostat.ucsf.edu wrote: Hi, sorry my mistake. I meant to write that you should pass the additional arguments to fit() for the CbsModel (not process()), e.g. cbs - CbsModel(ds); cbs$.calculateRatios - FALSE; fit(cbs, chromosomes=1:23, min.width=5, verbose=-10); This will (explicitly) fit the segmentation model. Have a look at the verbose output; you'll see that min.width should show up in the output just before the DNAcopy segment() is called. After you've done the segmentation for all of you arrays and chromosomes, you can have the ChromosomeExplorer generate the report for you as usual, i.e. ce - ChromosomeExplorer(cbs); process(ce, chromosomes=1:23); Note that in your case you have to either delete already generated CBS results, or use fit(..., force=TRUE), in order for aroma.* not to pick up the old segmentation. You also need to delete the already generated PNG files for the ChromosomeExplorer under reports/... On Tue, Oct 26, 2010 at 4:43 PM, Kai wangz...@gmail.com wrote: Hi Henrik, Thank you very much for your response. However, I tried the following codes to set the minimal number of marker to 5, but the results I got still contain segments with only 2 markers ... cbs = CbsModel(ds); cbs$.calculateRatios = FALSE; ce = ChromosomeExplorer(cbs); process(ce,chromosomes=c(1:23),min.width=5); I am not clear where I should put min.width=5? If I do process(cbs,min.width=5) first, how can I send the results to be displayed by chromosome explorer? Thanks again for your help. I look forward to hearing from you soon. Best, Kai On Sep 27, 9:47 pm, Henrik Bengtsson henrik.bengts...@gmail.com wrote: Hi. On Mon, Sep 27, 2010 at 4:51 PM, Kai wangz...@gmail.com wrote: Hi Henrik, I was wondering whether there is a way I can fine tune the behavior of CbsModel. Sometimes the default algorithm produces too many small fragments right next to each other without much separation in mean copy numbers. Is there a way to control how smooth the segmentation results are? Any additional arguments (in ...) that you pass to process(cbs, ...) will be passed down to the DNAcopy::segment(), which is the function doing the actual segmentation. For more details on how fine tuning the CBS algorithm, see help(segment, package=DNAcopy). You may also want to contact the authors of that method/package. /Henrik Thanks a lot! Best, Kai -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example.
Re: [aroma.affymetrix] Re: CbsModel parameters
Hi, sorry my mistake. I meant to write that you should pass the additional arguments to fit() for the CbsModel (not process()), e.g. cbs - CbsModel(ds); cbs$.calculateRatios - FALSE; fit(cbs, chromosomes=1:23, min.width=5, verbose=-10); This will (explicitly) fit the segmentation model. Have a look at the verbose output; you'll see that min.width should show up in the output just before the DNAcopy segment() is called. After you've done the segmentation for all of you arrays and chromosomes, you can have the ChromosomeExplorer generate the report for you as usual, i.e. ce - ChromosomeExplorer(cbs); process(ce, chromosomes=1:23); Note that in your case you have to either delete already generated CBS results, or use fit(..., force=TRUE), in order for aroma.* not to pick up the old segmentation. You also need to delete the already generated PNG files for the ChromosomeExplorer under reports/... On Tue, Oct 26, 2010 at 4:43 PM, Kai wangz...@gmail.com wrote: Hi Henrik, Thank you very much for your response. However, I tried the following codes to set the minimal number of marker to 5, but the results I got still contain segments with only 2 markers ... cbs = CbsModel(ds); cbs$.calculateRatios = FALSE; ce = ChromosomeExplorer(cbs); process(ce,chromosomes=c(1:23),min.width=5); I am not clear where I should put min.width=5? If I do process(cbs,min.width=5) first, how can I send the results to be displayed by chromosome explorer? Thanks again for your help. I look forward to hearing from you soon. Best, Kai On Sep 27, 9:47 pm, Henrik Bengtsson henrik.bengts...@gmail.com wrote: Hi. On Mon, Sep 27, 2010 at 4:51 PM, Kai wangz...@gmail.com wrote: Hi Henrik, I was wondering whether there is a way I can fine tune the behavior of CbsModel. Sometimes the default algorithm produces too many small fragments right next to each other without much separation in mean copy numbers. Is there a way to control how smooth the segmentation results are? Any additional arguments (in ...) that you pass to process(cbs, ...) will be passed down to the DNAcopy::segment(), which is the function doing the actual segmentation. For more details on how fine tuning the CBS algorithm, see help(segment, package=DNAcopy). You may also want to contact the authors of that method/package. /Henrik Thanks a lot! Best, Kai -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example. You received this message because you are subscribed to the Google Groups aroma.affymetrix group with websitehttp://www.aroma-project.org/. To post to this group, send email to aroma-affymetrix@googlegroups.com To unsubscribe and other options, go tohttp://www.aroma-project.org/forum/ -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example. You received this message because you are subscribed to the Google Groups aroma.affymetrix group with website http://www.aroma-project.org/. To post to this group, send email to aroma-affymetrix@googlegroups.com To unsubscribe and other options, go to http://www.aroma-project.org/forum/ -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example. You received this message because you are subscribed to the Google Groups aroma.affymetrix group with website http://www.aroma-project.org/. To post to this group, send email to aroma-affymetrix@googlegroups.com To unsubscribe and other options, go to http://www.aroma-project.org/forum/