Faster way to apply a function than endoapply on 40K GrangesList
1
0
Entering edit mode
@lakshmanan-iyer-1829
Last seen 8.6 years ago
United States
Hi, I am trying to add 10K to the end of the intervals in a GRangesList object using endoapply and flank using the comand: p3UTRs10K <- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); I am writing to find out if someone has a suggestion for a faster way of doing this? With 40000 elements it is taking a long time.. Here is what I am doing: class (p3UTRs) [1] "GRangesList" attr(,"package") [1] "GenomicRanges" length (p3UTRs) [1] 41053 p3UTRs10K <- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); > sessionInfo() R version 2.13.0 (2011-04-13) Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit) locale: [1] en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] BSgenome.Mmusculus.UCSC.mm9_1.3.17 GenomicFeatures_1.4.0 [3] leeBamViews_0.99.11 BSgenome_1.20.0 [5] Biobase_2.12.1 Rsamtools_1.4.1 [7] Biostrings_2.20.0 GenomicRanges_1.4.3 [9] IRanges_1.10.0 rtracklayer_1.12.0 [11] RCurl_1.5-0 bitops_1.0-4.1 loaded via a namespace (and not attached): [1] biomaRt_2.8.0 DBI_0.2-5 RSQLite_0.9-4 tools_2.13.0 XML_3.2-0 >
BSgenome BSgenome BSgenome BSgenome • 1.2k views
ADD COMMENT
0
Entering edit mode
@martin-morgan-1513
Last seen 5 days ago
United States
On 08/10/2011 12:36 PM, Lakshmanan Iyer wrote: > Hi, > I am trying to add 10K to the end of the intervals in a GRangesList > object using endoapply and flank using the comand: > p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); maybe along the lines of example(GRangesList) ranges(grl) = flank(ranges(grl), 10000, start=FALSE) which gives > end(grl) CompressedIntegerList of length 3 [["gr1"]] 6 [["gr2"]] 9 15 [["gr3"]] 3 9 > ranges(grl) = flank(ranges(grl), 1000, start=FALSE) > start(grl) CompressedIntegerList of length 3 [["gr1"]] 7 [["gr2"]] 10 16 [["gr3"]] 4 10 > end(grl) CompressedIntegerList of length 3 [["gr1"]] 1006 [["gr2"]] 1009 1015 [["gr3"]] 1003 1009 ? Martin > > I am writing to find out if someone has a suggestion for a faster way > of doing this? With 40000 elements it is taking a long time.. > > Here is what I am doing: > > class (p3UTRs) > [1] "GRangesList" > attr(,"package") > [1] "GenomicRanges" > > length (p3UTRs) > [1] 41053 > > p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); > >> sessionInfo() > R version 2.13.0 (2011-04-13) > Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit) > > locale: > [1] en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8 > > attached base packages: > [1] stats graphics grDevices utils datasets methods base > > other attached packages: > [1] BSgenome.Mmusculus.UCSC.mm9_1.3.17 GenomicFeatures_1.4.0 > [3] leeBamViews_0.99.11 BSgenome_1.20.0 > [5] Biobase_2.12.1 Rsamtools_1.4.1 > [7] Biostrings_2.20.0 GenomicRanges_1.4.3 > [9] IRanges_1.10.0 rtracklayer_1.12.0 > [11] RCurl_1.5-0 bitops_1.0-4.1 > > loaded via a namespace (and not attached): > [1] biomaRt_2.8.0 DBI_0.2-5 RSQLite_0.9-4 tools_2.13.0 XML_3.2-0 >> > > _______________________________________________ > Bioconductor mailing list > Bioconductor at r-project.org > https://stat.ethz.ch/mailman/listinfo/bioconductor > Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor -- Computational Biology Fred Hutchinson Cancer Research Center 1100 Fairview Ave. N. PO Box 19024 Seattle, WA 98109 Location: M1-B861 Telephone: 206 667-2793
ADD COMMENT
0
Entering edit mode
Hi, Note that the "flank" method for GRanges objects is strand aware and in this context "end" means "3' end". If that's not what you want, just do something like start(grl) <- end(grl) + 1L end(grl) <- end(grl) + 10000L and you are done. But if you really want the "3' end", I can't think of an easy/efficient way, unless you do something *highly* NOT recommended like accessing directly a slot of your GRangesList object: <never do="" this!=""> grl at unlistData <- flank(grl at unlistData, 10000, start=FALSE) </never> Of course we should provide a "flank" method for GRangesList objects that will do the above so the user doesn't need to use a dangerous/forbidden trick ;-) H. On 11-08-10 02:48 PM, Martin Morgan wrote: > On 08/10/2011 12:36 PM, Lakshmanan Iyer wrote: >> Hi, >> I am trying to add 10K to the end of the intervals in a GRangesList >> object using endoapply and flank using the comand: >> p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); > > maybe along the lines of > > example(GRangesList) > ranges(grl) = flank(ranges(grl), 10000, start=FALSE) > > which gives > > > end(grl) > CompressedIntegerList of length 3 > [["gr1"]] 6 > [["gr2"]] 9 15 > [["gr3"]] 3 9 > > ranges(grl) = flank(ranges(grl), 1000, start=FALSE) > > start(grl) > CompressedIntegerList of length 3 > [["gr1"]] 7 > [["gr2"]] 10 16 > [["gr3"]] 4 10 > > end(grl) > CompressedIntegerList of length 3 > [["gr1"]] 1006 > [["gr2"]] 1009 1015 > [["gr3"]] 1003 1009 > > ? Martin > >> >> I am writing to find out if someone has a suggestion for a faster way >> of doing this? With 40000 elements it is taking a long time.. >> >> Here is what I am doing: >> >> class (p3UTRs) >> [1] "GRangesList" >> attr(,"package") >> [1] "GenomicRanges" >> >> length (p3UTRs) >> [1] 41053 >> >> p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); >> >>> sessionInfo() >> R version 2.13.0 (2011-04-13) >> Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit) >> >> locale: >> [1] en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] BSgenome.Mmusculus.UCSC.mm9_1.3.17 GenomicFeatures_1.4.0 >> [3] leeBamViews_0.99.11 BSgenome_1.20.0 >> [5] Biobase_2.12.1 Rsamtools_1.4.1 >> [7] Biostrings_2.20.0 GenomicRanges_1.4.3 >> [9] IRanges_1.10.0 rtracklayer_1.12.0 >> [11] RCurl_1.5-0 bitops_1.0-4.1 >> >> loaded via a namespace (and not attached): >> [1] biomaRt_2.8.0 DBI_0.2-5 RSQLite_0.9-4 tools_2.13.0 XML_3.2-0 >>> >> >> _______________________________________________ >> Bioconductor mailing list >> Bioconductor at r-project.org >> https://stat.ethz.ch/mailman/listinfo/bioconductor >> Search the archives: >> http://news.gmane.org/gmane.science.biology.informatics.conductor > > -- Hervé Pagès Program in Computational Biology Division of Public Health Sciences Fred Hutchinson Cancer Research Center 1100 Fairview Ave. N, M1-B514 P.O. Box 19024 Seattle, WA 98109-1024 E-mail: hpages at fhcrc.org Phone: (206) 667-5791 Fax: (206) 667-1319
ADD REPLY
0
Entering edit mode
2011/8/10 Hervé Pagès <hpages@fhcrc.org> > Hi, > > Note that the "flank" method for GRanges objects is strand aware and > in this context "end" means "3' end". If that's not what you want, > just do something like > > start(grl) <- end(grl) + 1L > end(grl) <- end(grl) + 10000L > > and you are done. > > But if you really want the "3' end", I can't think of an easy/efficient > way, unless you do something *highly* NOT recommended like accessing > directly a slot of your GRangesList object: > > <never do="" this!=""> > > grl@unlistData <- flank(grl@unlistData, 10000, start=FALSE) > > </never> > > Of course we should provide a "flank" method for GRangesList > objects that will do the above so the user doesn't need to use > a dangerous/forbidden trick ;-) > > It does sound from his variable names that he is looking for a strand- aware method, while the RangesList approach proposed by Martin is strand insensitive (but fairly efficient due to the compression). That is easy to fix though: ranges(grl) <- flank(ranges(grl), 10000, start = strand(grl) == "-") Having such a flank() would be great on GRangesList. Also, a simple unlist(grl, use.names=FALSE) and then resplitting is a way to avoid depending on any internals, without sacrificing too much performance. Michael H. > > > > On 11-08-10 02:48 PM, Martin Morgan wrote: > >> On 08/10/2011 12:36 PM, Lakshmanan Iyer wrote: >> >>> Hi, >>> I am trying to add 10K to the end of the intervals in a GRangesList >>> object using endoapply and flank using the comand: >>> p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); >>> >> >> maybe along the lines of >> >> example(GRangesList) >> ranges(grl) = flank(ranges(grl), 10000, start=FALSE) >> >> which gives >> >> > end(grl) >> CompressedIntegerList of length 3 >> [["gr1"]] 6 >> [["gr2"]] 9 15 >> [["gr3"]] 3 9 >> > ranges(grl) = flank(ranges(grl), 1000, start=FALSE) >> > start(grl) >> CompressedIntegerList of length 3 >> [["gr1"]] 7 >> [["gr2"]] 10 16 >> [["gr3"]] 4 10 >> > end(grl) >> CompressedIntegerList of length 3 >> [["gr1"]] 1006 >> [["gr2"]] 1009 1015 >> [["gr3"]] 1003 1009 >> >> ? Martin >> >> >>> I am writing to find out if someone has a suggestion for a faster way >>> of doing this? With 40000 elements it is taking a long time.. >>> >>> Here is what I am doing: >>> >>> class (p3UTRs) >>> [1] "GRangesList" >>> attr(,"package") >>> [1] "GenomicRanges" >>> >>> length (p3UTRs) >>> [1] 41053 >>> >>> p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, 10000,start=FALSE)); >>> >>> sessionInfo() >>>> >>> R version 2.13.0 (2011-04-13) >>> Platform: x86_64-apple-darwin9.8.0/x86_**64 (64-bit) >>> >>> locale: >>> [1] en_US.UTF-8/en_US.UTF-8/C/C/**en_US.UTF-8/en_US.UTF-8 >>> >>> attached base packages: >>> [1] stats graphics grDevices utils datasets methods base >>> >>> other attached packages: >>> [1] BSgenome.Mmusculus.UCSC.mm9_1.**3.17 GenomicFeatures_1.4.0 >>> [3] leeBamViews_0.99.11 BSgenome_1.20.0 >>> [5] Biobase_2.12.1 Rsamtools_1.4.1 >>> [7] Biostrings_2.20.0 GenomicRanges_1.4.3 >>> [9] IRanges_1.10.0 rtracklayer_1.12.0 >>> [11] RCurl_1.5-0 bitops_1.0-4.1 >>> >>> loaded via a namespace (and not attached): >>> [1] biomaRt_2.8.0 DBI_0.2-5 RSQLite_0.9-4 tools_2.13.0 XML_3.2-0 >>> >>>> >>>> >>> ______________________________**_________________ >>> Bioconductor mailing list >>> Bioconductor@r-project.org >>> https://stat.ethz.ch/mailman/**listinfo/bioconductor<https: stat.="" ethz.ch="" mailman="" listinfo="" bioconductor=""> >>> Search the archives: >>> http://news.gmane.org/gmane.**science.biology.informatics.**conduc tor<http: news.gmane.org="" gmane.science.biology.informatics.conductor=""> >>> >> >> >> > > -- > Hervé Pagès > > Program in Computational Biology > Division of Public Health Sciences > > Fred Hutchinson Cancer Research Center > 1100 Fairview Ave. N, M1-B514 > P.O. Box 19024 > Seattle, WA 98109-1024 > > E-mail: hpages@fhcrc.org > Phone: (206) 667-5791 > Fax: (206) 667-1319 > > > ______________________________**_________________ > Bioconductor mailing list > Bioconductor@r-project.org > https://stat.ethz.ch/mailman/**listinfo/bioconductor<https: stat.et="" hz.ch="" mailman="" listinfo="" bioconductor=""> > Search the archives: http://news.gmane.org/gmane.** > science.biology.informatics.**conductor<http: news.gmane.org="" gmane.="" science.biology.informatics.conductor=""> > [[alternative HTML version deleted]]
ADD REPLY
0
Entering edit mode
Hi Michael, On 11-08-11 03:56 AM, Michael Lawrence wrote: > > > 2011/8/10 Hervé Pagès <hpages at="" fhcrc.org="" <mailto:hpages="" at="" fhcrc.org="">> > > Hi, > > Note that the "flank" method for GRanges objects is strand aware and > in this context "end" means "3' end". If that's not what you want, > just do something like > > start(grl) <- end(grl) + 1L > end(grl) <- end(grl) + 10000L > > and you are done. > > But if you really want the "3' end", I can't think of an easy/efficient > way, unless you do something *highly* NOT recommended like accessing > directly a slot of your GRangesList object: > > <never do="" this!=""> > > grl at unlistData <- flank(grl at unlistData, 10000, start=FALSE) > > </never> > > Of course we should provide a "flank" method for GRangesList > objects that will do the above so the user doesn't need to use > a dangerous/forbidden trick ;-) > > > > It does sound from his variable names that he is looking for a > strand-aware method, while the RangesList approach proposed by Martin is > strand insensitive (but fairly efficient due to the compression). That > is easy to fix though: > > ranges(grl) <- flank(ranges(grl), 10000, start = strand(grl) == "-") > > Having such a flank() would be great on GRangesList. > > Also, a simple unlist(grl, use.names=FALSE) and then resplitting is a > way to avoid depending on any internals, without sacrificing too much > performance. Yes, that's indeed cleaner. The resplitting can be a little bit tricky though so I was thinking maybe we should have "relist" methods for this. This would also allow to propagate all the metadata stuff (names, metadata, elementMetadata) from the 'skeleton' arg: gr <- unlist(grl, use.names=FALSE) gr2 <- FUN(gr) # FUN can be any isomorphism (i.e. endo # that preserves the length) grl2 <- relist(gr2, skeleton=grl) The relist part can be made really fast (as fast as the unlist part). Cheers, H. > > Michael > > > H. > > > > On 11-08-10 02:48 PM, Martin Morgan wrote: > > On 08/10/2011 12:36 PM, Lakshmanan Iyer wrote: > > Hi, > I am trying to add 10K to the end of the intervals in a > GRangesList > object using endoapply and flank using the comand: > p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, > 10000,start=FALSE)); > > > maybe along the lines of > > example(GRangesList) > ranges(grl) = flank(ranges(grl), 10000, start=FALSE) > > which gives > > > end(grl) > CompressedIntegerList of length 3 > [["gr1"]] 6 > [["gr2"]] 9 15 > [["gr3"]] 3 9 > > ranges(grl) = flank(ranges(grl), 1000, start=FALSE) > > start(grl) > CompressedIntegerList of length 3 > [["gr1"]] 7 > [["gr2"]] 10 16 > [["gr3"]] 4 10 > > end(grl) > CompressedIntegerList of length 3 > [["gr1"]] 1006 > [["gr2"]] 1009 1015 > [["gr3"]] 1003 1009 > > ? Martin > > > I am writing to find out if someone has a suggestion for a > faster way > of doing this? With 40000 elements it is taking a long time.. > > Here is what I am doing: > > class (p3UTRs) > [1] "GRangesList" > attr(,"package") > [1] "GenomicRanges" > > length (p3UTRs) > [1] 41053 > > p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, > 10000,start=FALSE)); > > sessionInfo() > > R version 2.13.0 (2011-04-13) > Platform: x86_64-apple-darwin9.8.0/x86___64 (64-bit) > > locale: > [1] en_US.UTF-8/en_US.UTF-8/C/C/__en_US.UTF-8/en_US.UTF-8 > > attached base packages: > [1] stats graphics grDevices utils datasets methods base > > other attached packages: > [1] BSgenome.Mmusculus.UCSC.mm9_1.__3.17 GenomicFeatures_1.4.0 > [3] leeBamViews_0.99.11 BSgenome_1.20.0 > [5] Biobase_2.12.1 Rsamtools_1.4.1 > [7] Biostrings_2.20.0 GenomicRanges_1.4.3 > [9] IRanges_1.10.0 rtracklayer_1.12.0 > [11] RCurl_1.5-0 bitops_1.0-4.1 > > loaded via a namespace (and not attached): > [1] biomaRt_2.8.0 DBI_0.2-5 RSQLite_0.9-4 tools_2.13.0 XML_3.2-0 > > > > _________________________________________________ > Bioconductor mailing list > Bioconductor at r-project.org <mailto:bioconductor at="" r-project.org=""> > https://stat.ethz.ch/mailman/__listinfo/bioconductor > <https: stat.ethz.ch="" mailman="" listinfo="" bioconductor=""> > Search the archives: > http://news.gmane.org/gmane.__science.biology.informatics.__conductor > <http: news.gmane.org="" gmane.science.biology.informatics.conductor=""> > > > > > > -- > Hervé Pagès > > Program in Computational Biology > Division of Public Health Sciences > > Fred Hutchinson Cancer Research Center > 1100 Fairview Ave. N, M1-B514 > P.O. Box 19024 > Seattle, WA 98109-1024 > > E-mail: hpages at fhcrc.org <mailto:hpages at="" fhcrc.org=""> > Phone: (206) 667-5791 <tel:%28206%29%20667-5791> > Fax: (206) 667-1319 <tel:%28206%29%20667-1319> > > > _________________________________________________ > Bioconductor mailing list > Bioconductor at r-project.org <mailto:bioconductor at="" r-project.org=""> > https://stat.ethz.ch/mailman/__listinfo/bioconductor > <https: stat.ethz.ch="" mailman="" listinfo="" bioconductor=""> > Search the archives: > http://news.gmane.org/gmane.__science.biology.informatics.__conductor <http: news.gmane.org="" gmane.science.biology.informatics.conductor=""> > > -- Hervé Pagès Program in Computational Biology Division of Public Health Sciences Fred Hutchinson Cancer Research Center 1100 Fairview Ave. N, M1-B514 P.O. Box 19024 Seattle, WA 98109-1024 E-mail: hpages at fhcrc.org Phone: (206) 667-5791 Fax: (206) 667-1319
ADD REPLY
0
Entering edit mode
2011/8/11 Hervé Pagès <hpages@fhcrc.org> > Hi Michael, > > On 11-08-11 03:56 AM, Michael Lawrence wrote: > >> >> >> 2011/8/10 Hervé Pagès <hpages@fhcrc.org <mailto:hpages@fhcrc.org="">> >> >> >> Hi, >> >> Note that the "flank" method for GRanges objects is strand aware and >> in this context "end" means "3' end". If that's not what you want, >> just do something like >> >> start(grl) <- end(grl) + 1L >> end(grl) <- end(grl) + 10000L >> >> and you are done. >> >> But if you really want the "3' end", I can't think of an easy/efficient >> way, unless you do something *highly* NOT recommended like accessing >> directly a slot of your GRangesList object: >> >> <never do="" this!=""> >> >> grl@unlistData <- flank(grl@unlistData, 10000, start=FALSE) >> >> </never> >> >> Of course we should provide a "flank" method for GRangesList >> objects that will do the above so the user doesn't need to use >> a dangerous/forbidden trick ;-) >> >> >> >> It does sound from his variable names that he is looking for a >> strand-aware method, while the RangesList approach proposed by Martin is >> strand insensitive (but fairly efficient due to the compression). That >> is easy to fix though: >> >> ranges(grl) <- flank(ranges(grl), 10000, start = strand(grl) == "-") >> >> Having such a flank() would be great on GRangesList. >> >> Also, a simple unlist(grl, use.names=FALSE) and then resplitting is a >> way to avoid depending on any internals, without sacrificing too much >> performance. >> > > Yes, that's indeed cleaner. The resplitting can be a little bit tricky > though so I was thinking maybe we should have "relist" methods for > this. This would also allow to propagate all the metadata stuff (names, > metadata, elementMetadata) from the 'skeleton' arg: > > gr <- unlist(grl, use.names=FALSE) > gr2 <- FUN(gr) # FUN can be any isomorphism (i.e. endo > # that preserves the length) > grl2 <- relist(gr2, skeleton=grl) > > The relist part can be made really fast (as fast as the unlist part). > > I had actually already implemented an efficient relist(), but it is not yet exported, as I'm still testing it. A lot of this stuff I develop during an analysis and never get around to cleaning up. Michael > Cheers, > H. > > >> Michael >> >> >> H. >> >> >> >> On 11-08-10 02:48 PM, Martin Morgan wrote: >> >> On 08/10/2011 12:36 PM, Lakshmanan Iyer wrote: >> >> Hi, >> I am trying to add 10K to the end of the intervals in a >> GRangesList >> object using endoapply and flank using the comand: >> p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, >> 10000,start=FALSE)); >> >> >> maybe along the lines of >> >> example(GRangesList) >> ranges(grl) = flank(ranges(grl), 10000, start=FALSE) >> >> which gives >> >> > end(grl) >> CompressedIntegerList of length 3 >> [["gr1"]] 6 >> [["gr2"]] 9 15 >> [["gr3"]] 3 9 >> > ranges(grl) = flank(ranges(grl), 1000, start=FALSE) >> > start(grl) >> CompressedIntegerList of length 3 >> [["gr1"]] 7 >> [["gr2"]] 10 16 >> [["gr3"]] 4 10 >> > end(grl) >> CompressedIntegerList of length 3 >> [["gr1"]] 1006 >> [["gr2"]] 1009 1015 >> [["gr3"]] 1003 1009 >> >> ? Martin >> >> >> I am writing to find out if someone has a suggestion for a >> faster way >> of doing this? With 40000 elements it is taking a long time.. >> >> Here is what I am doing: >> >> class (p3UTRs) >> [1] "GRangesList" >> attr(,"package") >> [1] "GenomicRanges" >> >> length (p3UTRs) >> [1] 41053 >> >> p3UTRs10K<- endoapply(p3UTRs,function (z) flank (z, >> 10000,start=FALSE)); >> >> sessionInfo() >> >> R version 2.13.0 (2011-04-13) >> Platform: x86_64-apple-darwin9.8.0/x86__**_64 (64-bit) >> >> locale: >> [1] en_US.UTF-8/en_US.UTF-8/C/C/__**en_US.UTF-8/en_US.UTF-8 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] BSgenome.Mmusculus.UCSC.mm9_1.**__3.17 >> GenomicFeatures_1.4.0 >> [3] leeBamViews_0.99.11 BSgenome_1.20.0 >> [5] Biobase_2.12.1 Rsamtools_1.4.1 >> [7] Biostrings_2.20.0 GenomicRanges_1.4.3 >> [9] IRanges_1.10.0 rtracklayer_1.12.0 >> [11] RCurl_1.5-0 bitops_1.0-4.1 >> >> loaded via a namespace (and not attached): >> [1] biomaRt_2.8.0 DBI_0.2-5 RSQLite_0.9-4 tools_2.13.0 >> XML_3.2-0 >> >> >> >> ______________________________**___________________ >> Bioconductor mailing list >> Bioconductor@r-project.org <mailto:bioconductor@r-**>> project.org <bioconductor@r-project.org>> >> >> https://stat.ethz.ch/mailman/_**_listinfo/bioconductor<h ttps:="" stat.ethz.ch="" mailman="" __listinfo="" bioconductor=""> >> <https: stat.ethz.ch="" mailman="" **listinfo="" bioconductor<ht="" tps:="" stat.ethz.ch="" mailman="" listinfo="" bioconductor=""> >> > >> Search the archives: >> http://news.gmane.org/gmane.__**science.biology.informatics.__ >> **conductor<http: news.gmane.org="" gmane.__science.biology.informati="" cs.__conductor=""> >> <http: news.gmane.org="" gmane.**science.biology.informatics.**="">> conductor<http: news.gmane.org="" gmane.science.biology.informatics.c="" onductor=""> >> > >> >> >> >> >> >> -- >> Hervé Pagès >> >> Program in Computational Biology >> Division of Public Health Sciences >> >> Fred Hutchinson Cancer Research Center >> 1100 Fairview Ave. N, M1-B514 >> P.O. Box 19024 >> Seattle, WA 98109-1024 >> >> E-mail: hpages@fhcrc.org <mailto:hpages@fhcrc.org> >> Phone: (206) 667-5791 <tel:%28206%29%20667-5791> >> Fax: (206) 667-1319 <tel:%28206%29%20667-1319> >> >> >> ______________________________**___________________ >> Bioconductor mailing list >> Bioconductor@r-project.org <mailto:bioconductor@r-**project.org<bioconductor@r-project.org> >> > >> >> https://stat.ethz.ch/mailman/_**_listinfo/bioconductor<https: s="" tat.ethz.ch="" mailman="" __listinfo="" bioconductor=""> >> <https: stat.ethz.ch="" mailman="" **listinfo="" bioconductor<https:="" st="" at.ethz.ch="" mailman="" listinfo="" bioconductor=""> >> > >> Search the archives: >> http://news.gmane.org/gmane.__**science.biology.informatics.__** >> conductor<http: news.gmane.org="" gmane.__science.biology.informatics="" .__conductor="">< >> http://news.gmane.org/gmane.**science.biology.informatics.**conduct or<http: news.gmane.org="" gmane.science.biology.informatics.conductor=""> >> > >> >> >> > > -- > Hervé Pagès > > Program in Computational Biology > Division of Public Health Sciences > Fred Hutchinson Cancer Research Center > 1100 Fairview Ave. N, M1-B514 > P.O. Box 19024 > Seattle, WA 98109-1024 > > E-mail: hpages@fhcrc.org > Phone: (206) 667-5791 > Fax: (206) 667-1319 > [[alternative HTML version deleted]]
ADD REPLY

Login before adding your answer.

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