[R] more about outer

Erich Neuwirth erich.neuwirth at univie.ac.at
Sun Sep 23 19:05:38 CEST 2001


thanks,

your original code did not wortk for me,
but the following version seems to work


vectorize2 <- function(f) 
    function(x, y,...)
        sapply(1:length(x), function(i)f(x[i],y[i],...))


Peter Dalgaard BSA wrote:
> 
> Erich Neuwirth <erich.neuwirth at univie.ac.at> writes:
> 
> > this is my current answer to my own question.
> > should we have such a funcion in a more general version
> > (i.e. with an arbitraty number of argument lists, for n-ary
> > functions)
> > in the core language?
> >
> > myouter<-function(x,y,fun){
> > t(sapply(x,function(arg1) sapply(y,function(arg2) fun(arg1,arg2))))
> > }
> 
> I'd be partial to this kind of constructions
> 
> vectorize2 <- function(f)
>     function(x, y,...)
>         sapply(seq, along=x, function(i)f(x[i],y[i],...))
> 
> so that you can simply do
> 
> outer(x, y, vectorize2(fun))
> 
> A similar technique for functions of one variable would be
> 
> vectorize <- function(f)
>     function(x, ...)
>         sapply(x, f)
> 
> The case of N variables is -um- interesting...
> 
> --
>    O__  ---- Peter Dalgaard             Blegdamsvej 3
>   c/ /'_ --- Dept. of Biostatistics     2200 Cph. N
>  (*) \(*) -- University of Copenhagen   Denmark      Ph: (+45) 35327918
> ~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)             FAX: (+45) 35327907
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list