Re: [Bioc-devel] Valid classes for extraColumnSlots
Hi Michael, Sorry for my misunderstanding. Here is some code describing the class https://github.com/PeteHaitch/GenomicTuples/blob/master/R/GTuples-class.R(the package is not yet installable but hopefully the in-progress code shows you what I'm trying to achieve). The relevant slot is called internalPos and extraColumnSlotNames does indeed return this as a character vector. What I meant is that originally the internalPos slot was a matrix (or NULL). I switched to DataFrame (or NULL) because I was running into some problems related to replaceROWS when it was a matrix. Thanks,Pete - Original Message -From: Michael Lawrence lawrence.mich...@gene.comTo: Peter Hickey hic...@wehi.edu.auCc: bioc-devel@r-project.orgSent: Tue, 26 Aug 2014 13:35:35 +1000 (EST)Subject: Re: [Bioc-devel] Valid classes for extraColumnSlots Hi Peter, Some code would help here. I'm not sure what you mean by having a matrix as your extraColumnSlots. A derivative of GenomicRanges should definel a method for extraColumnSlotNames that returns a character vector of names for actual slots that the class defines. It sounds like you're trying to represent all of the extra column slots with a single matrix slot, which is not how the mechanism was designed. Michael On Mon, Aug 25, 2014 at 7:57 PM, Peter Hickey hic...@wehi.edu.au wrote: Are the extraColumnSlots of a class that extends GenomicRanges limited to DataFrame objects? Background: I wrote a class that extends the GRanges class. It has a matrix as the extraColumnSlots. When I use replaceROWS,GenomicRanges,GenomicRanges-method (via inheritance) it extracts this extraColumnSlots as a DataFrame object by use of GenomicRanges:::extraColumnSlotsAsDF. This means that the subsequent call to update() in replaceROWS,GenomicRanges,GenomicRanges-method fails because the class definition expects a matrix for the extraSlotNames but gets a DataFrame. In this case, it's not a problem for me to change my extraColumnSlots element to a DataFrame in the class definition. However, more generally, some guidance on what classes are and are not allowed in extraColumnSlots would be appreciated. Thanks, Pete This is using BioC devel: sessionInfo() R version 3.1.1 (2014-07-10) Platform: x86_64-apple-darwin13.1.0 (64-bit) locale: [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 attached base packages: [1] parallel stats graphics grDevices utils datasets methods [8] base other attached packages: [1] GenomicTuples_0.1.0 GenomicRanges_1.17.35 GenomeInfoDb_1.1.18 [4] IRanges_1.99.24 S4Vectors_0.1.2 BiocGenerics_0.11.4 [7] devtools_1.5 loaded via a namespace (and not attached): [1] Biobase_2.25.0 digest_0.6.4 evaluate_0.5.5 httr_0.4 [5] memoise_0.2.1packrat_0.4.0.12 Rcpp_0.11.2 RCurl_1.95-4.3 [9] stats4_3.1.1 stringr_0.6.2tools_3.1.1 whisker_0.3-2 Peter Hickey, PhD Student/Research Assistant, Bioinformatics Division, Walter and Eliza Hall Institute of Medical Research, 1G Royal Parade, Parkville, Vic 3052, Australia. Ph: +613 9345 2324 hic...@wehi.edu.auhttp://www.wehi.edu.au __ The information in this email is confidential and intend...{{dropped:15}} ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Bioc-devel] Valid classes for extraColumnSlots
Do you have the code that actually fails? Then I could use it to reproduce the problem and fix things. Thanks, Michael On Tue, Aug 26, 2014 at 4:25 AM, Peter Hickey hic...@wehi.edu.au wrote: Hi Michael, Sorry for my misunderstanding. Here is some code describing the class https://github.com/PeteHaitch/GenomicTuples/blob/master/R/GTuples-class.R (the package is not yet installable but hopefully the in-progress code shows you what I'm trying to achieve). The relevant slot is called internalPos and extraColumnSlotNames does indeed return this as a character vector. What I meant is that originally the internalPos slot was a matrix (or NULL). I switched to DataFrame (or NULL) because I was running into some problems related to replaceROWS when it was a matrix. Thanks, Pete - Original Message - From: Michael Lawrence lawrence.mich...@gene.com To: Peter Hickey hic...@wehi.edu.au Cc: bioc-devel@r-project.org Sent: Tue, 26 Aug 2014 13:35:35 +1000 (EST) Subject: Re: [Bioc-devel] Valid classes for extraColumnSlots Hi Peter, Some code would help here. I'm not sure what you mean by having a matrix as your extraColumnSlots. A derivative of GenomicRanges should definel a method for extraColumnSlotNames that returns a character vector of names for actual slots that the class defines. It sounds like you're trying to represent all of the extra column slots with a single matrix slot, which is not how the mechanism was designed. Michael On Mon, Aug 25, 2014 at 7:57 PM, Peter Hickey hic...@wehi.edu.au wrote: Are the extraColumnSlots of a class that extends GenomicRanges limited to DataFrame objects? Background: I wrote a class that extends the GRanges class. It has a matrix as the extraColumnSlots. When I use replaceROWS,GenomicRanges,GenomicRanges-method (via inheritance) it extracts this extraColumnSlots as a DataFrame object by use of GenomicRanges:::extraColumnSlotsAsDF. This means that the subsequent call to update() in replaceROWS,GenomicRanges,GenomicRanges-method fails because the class definition expects a matrix for the extraSlotNames but gets a DataFrame. In this case, it's not a problem for me to change my extraColumnSlots element to a DataFrame in the class definition. However, more generally, some guidance on what classes are and are not allowed in extraColumnSlots would be appreciated. Thanks, Pete This is using BioC devel: sessionInfo() R version 3.1.1 (2014-07-10) Platform: x86_64-apple-darwin13.1.0 (64-bit) locale: [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 attached base packages: [1] parallel stats graphics grDevices utils datasets methods [8] base other attached packages: [1] GenomicTuples_0.1.0 GenomicRanges_1.17.35 GenomeInfoDb_1.1.18 [4] IRanges_1.99.24 S4Vectors_0.1.2 BiocGenerics_0.11.4 [7] devtools_1.5 loaded via a namespace (and not attached): [1] Biobase_2.25.0 digest_0.6.4 evaluate_0.5.5 httr_0.4 [5] memoise_0.2.1packrat_0.4.0.12 Rcpp_0.11.2 RCurl_1.95-4.3 [9] stats4_3.1.1 stringr_0.6.2tools_3.1.1 whisker_0.3-2 Peter Hickey, PhD Student/Research Assistant, Bioinformatics Division, Walter and Eliza Hall Institute of Medical Research, 1G Royal Parade, Parkville, Vic 3052, Australia. Ph: +613 9345 2324 hic...@wehi.edu.au http://www.wehi.edu.au __ The information in this email is confidential and intend...{{dropped:6}} ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel __ The information in this email is confidential and inte...{{dropped:10}} ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Bioc-devel] writeVcf performance
Hi Gabe, Martin responded, and so did Michael, https://stat.ethz.ch/pipermail/bioc-devel/2014-August/006082.html It sounded like Michael was ok with working with/around heap initialization. Michael, is that right or should we still consider this on the table? Val On 08/26/2014 09:34 AM, Gabe Becker wrote: Val, Has there been any movement on this? This remains a substantial bottleneck for us when writing very large VCF files (e.g. variants+genotypes for whole genome NGS samples). I was able to see a ~25% speedup with 4 cores and an optimal speedup of ~2x with 10-12 cores for a VCF with 500k rows using a very naive parallelization strategy and no other changes. I suspect this could be improved on quite a bit, or possibly made irrelevant with judicious use of serial C code. Did you and Martin make any plans regarding optimizing writeVcf? Best ~G On Tue, Aug 5, 2014 at 2:33 PM, Valerie Obenchain voben...@fhcrc.org mailto:voben...@fhcrc.org wrote: Hi Michael, I'm interested in working on this. I'll discuss with Martin next week when we're both back in the office. Val On 08/05/14 07:46, Michael Lawrence wrote: Hi guys (Val, Martin, Herve): Anyone have an itch for optimization? The writeVcf function is currently a bottleneck in our WGS genotyping pipeline. For a typical 50 million row gVCF, it was taking 2.25 hours prior to yesterday's improvements (pasteCollapseRows) that brought it down to about 1 hour, which is still too long by my standards ( 0). Only takes 3 minutes to call the genotypes (and associated likelihoods etc) from the variant calls (using 80 cores and 450 GB RAM on one node), so the output is an issue. Profiling suggests that the running time scales non-linearly in the number of rows. Digging a little deeper, it seems to be something with R's string/memory allocation. Below, pasting 1 million strings takes 6 seconds, but 10 million strings takes over 2 minutes. It gets way worse with 50 million. I suspect it has something to do with R's string hash table. set.seed(1000) end - sample(1e8, 1e6) system.time(paste0(END, =, end)) user system elapsed 6.396 0.028 6.420 end - sample(1e8, 1e7) system.time(paste0(END, =, end)) user system elapsed 134.714 0.352 134.978 Indeed, even this takes a long time (in a fresh session): set.seed(1000) end - sample(1e8, 1e6) end - sample(1e8, 1e7) system.time(as.character(end)) user system elapsed 57.224 0.156 57.366 But running it a second time is faster (about what one would expect?): system.time(levels - as.character(end)) user system elapsed 23.582 0.021 23.589 I did some simple profiling of R to find that the resizing of the string hash table is not a significant component of the time. So maybe something to do with the R heap/gc? No time right now to go deeper. But I know Martin likes this sort of thing ;) Michael [[alternative HTML version deleted]] _ Bioc-devel@r-project.org mailto:Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/__listinfo/bioc-devel https://stat.ethz.ch/mailman/listinfo/bioc-devel _ Bioc-devel@r-project.org mailto:Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/__listinfo/bioc-devel https://stat.ethz.ch/mailman/listinfo/bioc-devel -- Computational Biologist Genentech Research ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Bioc-devel] built BioC packages using RStudio
Hi Karim, - Original Message - From: Karim Mezhoud kmezh...@gmail.com To: bioc-devel@r-project.org Sent: Tuesday, August 26, 2014 11:26:45 AM Subject: [Bioc-devel] built BioC packages using RStudio Dear All, I am trying to built for the first time a package. I am following this tutorial: https://support.rstudio.com/hc/en-us/articles/200486488-Developing-Packages-with-RStudio I create a new Project (package) and I added 44 .R sources files (functions). After, I got error message when I built and reload the project; In attached file the log informations. Your attachment did not come through. It's better to paste in error messages directly into the email message. Any suggestion? I need to fill the doc informations (title, manual, vignette, description). Can I do these directly from Rd files located in Man folder? If I understand you correctly, then yes, you can. BTW, this question does not seem to be specific to Bioconductor, you might have better luck asking on R-help (http://stat.ethz.ch/mailman/listinfo/r-help). Dan Thanks! Karim Mezhoud ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Bioc-devel] Mistake in extractTranscriptSeqs() {from: GenomicFeatures} when transcripts are on minus strand
Hi Kristoffer, On 08/26/2014 07:40 AM, Kristoffer Vitting-Seerup wrote: The problem is best illustrated with an example (with comments in bold): # Load libraries: library('GenomicFeatures') library(BSgenome.Hsapiens.UCSC.hg19�) # Create two test transcripts, one on each strand testTranscriptPlus - GRanges(seqnames='chr1', ranges=IRanges(start=1e5+c(1,11), end=1e5+c(3,13)), strand='+') testTranscriptMinus - GRanges(seqnames='chr1', ranges=IRanges(start=1e5+c(1,11), end=1e5+c(3,13)), strand='-�) # Use getSeq() to extract sequence getSeq(Hsapiens, testTranscriptPlus) A DNAStringSet instance of length 2 width seq [1] 3 ACT [2] 3 CAG testTranscriptMinus - GRanges(seqnames='chr1', ranges=IRanges(start=1e5+c(1,11), end=1e5+c(3,13)), strand='-') getSeq(Hsapiens, testTranscriptMinus) A DNAStringSet instance of length 2 width seq [1] 3 AGT [2] 3 CTG # By comparing the plus and minus transcripts it can be seen that getSeq returns the sequences in the 5� to 3� orientation no matter the strand (very nice feature by the way) # Furthermore we would expect the transcript sequence of the testTranscriptMinus to be: CTGAGT (since we are on the minus strand). Nope. You should expect the transcript sequence to be AGTCTG. Because the convention we use is that exons are ranked according to their position (i.e. index) in the GRanges object, and this *independently* of the strand. So the 1st element in the GRanges object is the 1st exon, the 2nd element is the 2nd exon, etc... # Now lets extract the sequences of the minus strand transcript using the extractTranscriptSeqs() function extractTranscriptSeqs( Hsapiens, split( testTranscriptMinus, f=c('test','test'))) A DNAStringSet instance of length 1 width seq names [1] 6 AGTCTG test # From which it can be observed that extractTranscriptSeqs() have concatenated the exons without taking the order into account (which works fine on plus strand but results in non-exisiting transcript from the minus strand). Yes, exon rank was taken into account. See above. Note that extractTranscriptSeqs() is more often used on a GRangesList object that represents a set of transcripts: library(TxDb.Hsapiens.UCSC.hg19.knownGene) txdb - TxDb.Hsapiens.UCSC.hg19.knownGene transcripts - exonsBy(txdb, by=tx, use.names=TRUE) 'transcripts' is a named GRangesList object with one list element per transcript. The names on 'transcripts' are the UCSC transcript ids. Each list element in 'transcripts' is a small GRanges object that lists the exons for a particular transcript. Let's look at 3 transcripts, 2 on the + strand, and 1 on the - strand: transcripts[4072:4074] GRangesList of length 3: $uc009xhd.3 GRanges with 4 ranges and 3 metadata columns: seqnames ranges strand | exon_id exon_name exon_rank Rle IRanges Rle | integer character integer [1] chr1 [249200442, 249200541] + | 13958NA 1 [2] chr1 [249208015, 249208078] + | 13959NA 2 [3] chr1 [249208638, 249208758] + | 13960NA 3 [4] chr1 [249210801, 249213345] + | 13961NA 4 $uc021pmh.1 GRanges with 1 range and 3 metadata columns: seqnames ranges strand | exon_id exon_name exon_rank [1] chr1 [249211537, 249212562] + | 13963 NA 1 $uc009vis.3 GRanges with 4 ranges and 3 metadata columns: seqnames ranges strand | exon_id exon_name exon_rank [1] chr1 [16607, 16765] - | 13970 NA 1 [2] chr1 [15796, 15942] - | 13968 NA 2 [3] chr1 [14970, 15038] - | 13966 NA 3 [4] chr1 [14362, 14829] - | 13964 NA 4 --- seqlengths: chr1 chr2 ...chrUn_gl000249 249250621 243199373 ... 38502 As you can see, exons are always listed in the order corresponding to their rank, independently of the strand. This means that, for a normal transcript on the minus strand (like transcript uc009vis.3), exons will usually be sorted by descending coordinates. But for some exotic transcripts (like the very unrealistic one you crafted in 'testTranscriptMinus') this might not be the case. Using getSeq() on transcript uc009vis.3: library(BSgenome.Hsapiens.UCSC.hg19) genome - BSgenome.Hsapiens.UCSC.hg19 exon_seqs - getSeq(genome, transcripts$uc009vis.3) Then: exon_seqs A DNAStringSet instance of length 4 width seq [1] 159
Re: [Bioc-devel] ggbio 1.13.11 fails to load due to namespace change in IRanges
Hi Leo, So sorry for the late reply, I guess the problem is fixed already? I cannot see the error anymore, and thanks for the discussion! cheers Tengfei On Wed, Jul 16, 2014 at 2:39 PM, Leonardo Collado Torres lcoll...@jhu.edu wrote: Hi Tengfei and BioC-devel, ggbio 1.13.11 fails to load due to recent changes in IRanges' namespace as shown further below. Basically, some of IRanges previous code now lives in S4Vectors. On a recent thread Hervé exposed his view on specific imports versus importing the whole package (see https://stat.ethz.ch/pipermail/bioc-devel/2014-July/005943.html and Stephanie's reply https://stat.ethz.ch/pipermail/bioc-devel/2014-July/005948.html ). I have been using specific imports because I thought it was the best practice and that it would also help me learn more about what are the functions/methods I'm relying on exactly. But as Hervé exposed, using specific imports involves a lot of maintenance overhead. That is why, in general I'll try to use general imports now. Cheers, Leo library(ggbio) Loading required package: BiocGenerics Loading required package: parallel Attaching package: ‘BiocGenerics’ The following objects are masked from ‘package:parallel’: clusterApply, clusterApplyLB, clusterCall, clusterEvalQ, clusterExport, clusterMap, parApply, parCapply, parLapply, parLapplyLB, parRapply, parSapply, parSapplyLB The following object is masked from ‘package:stats’: xtabs The following objects are masked from ‘package:base’: anyDuplicated, append, as.data.frame, as.vector, cbind, colnames, do.call, duplicated, eval, evalq, Filter, Find, get, intersect, is.unsorted, lapply, Map, mapply, match, mget, order, paste, pmax, pmax.int, pmin, pmin.int, Position, rank, rbind, Reduce, rep.int, rownames, sapply, setdiff, sort, table, tapply, union, unique, unlist Loading required package: ggplot2 No methods found in IRanges for requests: Rle, substring, ifelse, as.factor Error : object ‘runValue’ is not exported by 'namespace:IRanges' Error: package or namespace load failed for ‘ggbio’ traceback() 2: stop(gettextf(package or namespace load failed for %s, sQuote(package)), call. = FALSE, domain = NA) 1: library(ggbio) sessionInfo() R version 3.1.0 (2014-04-10) Platform: x86_64-apple-darwin10.8.0 (64-bit) locale: [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8 attached base packages: [1] parallel stats graphics grDevices utils datasets methods base other attached packages: [1] ggplot2_1.0.0 BiocGenerics_0.11.3 loaded via a namespace (and not attached): [1] AnnotationDbi_1.27.8 BatchJobs_1.3BBmisc_1.7 Biobase_2.25.0 BiocParallel_0.7.7 [6] biomaRt_2.21.1 Biostrings_2.33.12 bitops_1.0-6 brew_1.0-6 BSgenome_1.33.8 [11] checkmate_1.1cluster_1.15.2 codetools_0.2-8 colorspace_1.2-4 DBI_0.2-7 [16] dichromat_2.0-0 digest_0.6.4 fail_1.2 foreach_1.4.2Formula_1.1-2 [21] GenomeInfoDb_1.1.12 GenomicAlignments_1.1.21 GenomicFeatures_1.17.12 GenomicRanges_1.17.24GGally_0.4.6 [26] grid_3.1.0 gridExtra_0.9.1 gtable_0.1.2 Hmisc_3.14-4 IRanges_1.99.22 [31] iterators_1.0.7 lattice_0.20-29 latticeExtra_0.6-26 MASS_7.3-33 munsell_0.4.2 [36] plyr_1.8.1 proto_0.3-10 RColorBrewer_1.0-5 Rcpp_0.11.2 RCurl_1.95-4.1 [41] reshape_0.8.5reshape2_1.4 Rsamtools_1.17.31RSQLite_0.11.4 rtracklayer_1.25.13 [46] S4Vectors_0.1.2 scales_0.2.4 sendmailR_1.1-2 splines_3.1.0stats4_3.1.0 [51] stringr_0.6.2survival_2.37-7 tools_3.1.0 XML_3.98-1.1 XVector_0.5.7 [56] zlibbioc_1.11.1 packageVersion(ggbio) [1] ‘1.13.11’ -- Tengfei Yin, PhD Product Manager Seven Bridges Genomics sbgenomics.com One Broadway FL 7 Cambridge, MA 02142 (617) 866-0446 [[alternative HTML version deleted]] ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Bioc-devel] Valid classes for extraColumnSlots
Hi Michael, Thanks for your patience. Here is a self-contained example with comments https://gist.github.com/PeteHaitch/fdb66d360446ff96ed4b Thanks, Pete On 27/08/2014, at 1:43 AM, Michael Lawrence lawrence.mich...@gene.com wrote: Do you have the code that actually fails? Then I could use it to reproduce the problem and fix things. Thanks, Michael On Tue, Aug 26, 2014 at 4:25 AM, Peter Hickey hic...@wehi.edu.au wrote: Hi Michael, Sorry for my misunderstanding. Here is some code describing the class https://github.com/PeteHaitch/GenomicTuples/blob/master/R/GTuples-class.R (the package is not yet installable but hopefully the in-progress code shows you what I'm trying to achieve). The relevant slot is called internalPos and extraColumnSlotNames does indeed return this as a character vector. What I meant is that originally the internalPos slot was a matrix (or NULL). I switched to DataFrame (or NULL) because I was running into some problems related to replaceROWS when it was a matrix. Thanks, Pete - Original Message - From: Michael Lawrence lawrence.mich...@gene.com To: Peter Hickey hic...@wehi.edu.au Cc: bioc-devel@r-project.org Sent: Tue, 26 Aug 2014 13:35:35 +1000 (EST) Subject: Re: [Bioc-devel] Valid classes for extraColumnSlots Hi Peter, Some code would help here. I'm not sure what you mean by having a matrix as your extraColumnSlots. A derivative of GenomicRanges should definel a method for extraColumnSlotNames that returns a character vector of names for actual slots that the class defines. It sounds like you're trying to represent all of the extra column slots with a single matrix slot, which is not how the mechanism was designed. Michael On Mon, Aug 25, 2014 at 7:57 PM, Peter Hickey hic...@wehi.edu.au wrote: Are the extraColumnSlots of a class that extends GenomicRanges limited to DataFrame objects? Background: I wrote a class that extends the GRanges class. It has a matrix as the extraColumnSlots. When I use replaceROWS,GenomicRanges,GenomicRanges-method (via inheritance) it extracts this extraColumnSlots as a DataFrame object by use of GenomicRanges:::extraColumnSlotsAsDF. This means that the subsequent call to update() in replaceROWS,GenomicRanges,GenomicRanges-method fails because the class definition expects a matrix for the extraSlotNames but gets a DataFrame. In this case, it's not a problem for me to change my extraColumnSlots element to a DataFrame in the class definition. However, more generally, some guidance on what classes are and are not allowed in extraColumnSlots would be appreciated. Thanks, Pete This is using BioC devel: sessionInfo() R version 3.1.1 (2014-07-10) Platform: x86_64-apple-darwin13.1.0 (64-bit) locale: [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 attached base packages: [1] parallel stats graphics grDevices utils datasets methods [8] base other attached packages: [1] GenomicTuples_0.1.0 GenomicRanges_1.17.35 GenomeInfoDb_1.1.18 [4] IRanges_1.99.24 S4Vectors_0.1.2 BiocGenerics_0.11.4 [7] devtools_1.5 loaded via a namespace (and not attached): [1] Biobase_2.25.0 digest_0.6.4 evaluate_0.5.5 httr_0.4 [5] memoise_0.2.1packrat_0.4.0.12 Rcpp_0.11.2 RCurl_1.95-4.3 [9] stats4_3.1.1 stringr_0.6.2tools_3.1.1 whisker_0.3-2 Peter Hickey, PhD Student/Research Assistant, Bioinformatics Division, Walter and Eliza Hall Institute of Medical Research, 1G Royal Parade, Parkville, Vic 3052, Australia. Ph: +613 9345 2324 hic...@wehi.edu.au http://www.wehi.edu.au __ The information in this email is confidential and intend...{{dropped:6}} ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel __ 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. __ Peter Hickey, PhD Student/Research Assistant, Bioinformatics Division, Walter and Eliza Hall Institute of Medical Research, 1G Royal Parade, Parkville, Vic 3052, Australia. Ph: +613 9345 2324 hic...@wehi.edu.au http://www.wehi.edu.au __ 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. ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel