[Bioc-devel] converting character vector to DNAStringSetList
Stephanie M. Gogarten
sdmorris at u.washington.edu
Fri Apr 19 22:48:23 CEST 2013
Thanks, Herve!
To answer Tim's question (though it has become irrelevant after Herve's
solution): because I'd rather not add VariantAnnotation to my dependency
tree for only a couple of lines of code. It also seemed like the sort
of thing that should be possible with a DNAStringSetList constructor, so
I'm glad it will be starting tomorrow.
Stephanie
On 4/19/13 12:35 PM, Hervé Pagès wrote:
> Hi Stephanie,
>
> On 04/19/2013 11:55 AM, Stephanie M. Gogarten wrote:
>> Hi all,
>>
>> There is a non-exported function in VariantAnnotation called
>> .toDNAStringSetList that converts a vector of comma-separated character
>> strings to a DNAStringSetList. I'd like to use this code in a package
>> I'm working on. Would it make sense to export this from Biostrings? If
>> not, what is the proper way to attribute code if I borrow a few lines
>> from .toDNAStringSetList?
>
> This should be a 1-liner but the 1-liner fails at the moment because the
> DNAStringSetList() constructor doesn't work on a list:
>
> > comma_sep_strings <- c("AA,TT", "ACGT", "", "TT,A,,TAG")
> > DNAStringSetList(strsplit(comma_sep_strings, ",", fixed=TRUE))
> Error in strsplit(comma_sep_strings, ",") : non-character argument
>
> Of course this should work (and it will work tomorrow after you run
> biocLite()). In the mean time the workaround is to use do.call():
>
> > do.call(DNAStringSetList, strsplit(comma_sep_strings, ",",
> fixed=TRUE))
> DNAStringSetList of length 4
> [[1]] AA TT
> [[2]] ACGT
> [[3]] A DNAStringSet instance of length 0
> [[4]] TT A TAG
>
> Cheers,
> H.
>
> PS: Calling strsplit() with 'fixed=TRUE' makes it about 4x faster :-)
>
>>
>> thanks,
>> Stephanie
>>
>> _______________________________________________
>> Bioc-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/bioc-devel
>
More information about the Bioc-devel
mailing list