[Bioc-sig-seq] mapply with GRangesList
Martin Morgan
mtmorgan at fhcrc.org
Thu Mar 24 03:28:47 CET 2011
On 03/23/2011 05:00 PM, Dario Strbenac wrote:
> mapply doesn't iterate over the GRangesList in an example I have that
also uses other types of variables. Would it be possible for it to be
more flexible in this usage ?
>
Hi Dario -- unfortunately mapply 'dispatches' on its '...' argument, and
'...' dispatch only works when all relevant arguments are of the same
type (e.g., mapply(function(x, y) print(x), grl, grl) would work). This
is how S4 is implemented (see ?dotsMethods) so we're kind of stuck with
this behavior. The workaround is along the lines of
lapply(seq_len(length(grl)),
function(i, x, y, ...) print(x[[i]]),
grl, 1:2)
> mapply
standardGeneric for "mapply" defined from package "IRanges"
function (FUN, ..., MoreArgs = NULL, SIMPLIFY = TRUE, USE.NAMES = TRUE)
standardGeneric("mapply")
<bytecode: 0x207e200>
<environment: 0x20a4cc0>
Methods may be defined for arguments: ...
Use showMethods("mapply") for currently available ones.
Martin
> Simple example:
>
> gr1<- GRanges("chr1", IRanges(seq(100, 600, 100), width = 100)) gr2<-
> GRanges("chr2", IRanges(seq(1000, 1600, 100), width = 100)) grl<-
> GRangesList(gr1, gr2)
>
> IRanges::mapply(function(x, y) { print(x) print(y) }, grl, 1:2,
> SIMPLIFY = FALSE)
>
> Result: It keeps using element 1 of grl.
>
> -------------------------------------- Dario Strbenac Research
> Assistant Cancer Epigenetics Garvan Institute of Medical Research
> Darlinghurst NSW 2010 Australia
>
> _______________________________________________ Bioc-sig-sequencing
> mailing list Bioc-sig-sequencing at r-project.org
> https://stat.ethz.ch/mailman/listinfo/bioc-sig-sequencing
--
Computational Biology
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N. PO Box 19024 Seattle, WA 98109
Location: M1-B861
Telephone: 206 667-2793
More information about the Bioc-sig-sequencing
mailing list