Re: [R] Is there anywhere recycle()?

From: Gregor Gorjanc <gregor.gorjanc_at_gmail.com>
Date: Mon 24 Jul 2006 - 02:17:01 EST

Hi,

Gabor Grothendieck wrote:

> Try:
> 
> foo2 <- function(x, a) cbind(x,a)[,2]
> 

thank you for this. It does work to some extent, but not much better than mine foo.

foo2(c(1, 2, 3), a=1)
[1] 1 1 1

18:14:08
R> foo2(c(1, 2, 3), a=c(1,2,3,4))
[1] 1 2 3 4
Warning message:
number of rows of result

        is not a multiple of vector length (arg 1) in: cbind(1, x, a)

18:14:13
R> foo2(c(1, 2, 3), a=c(1,2,3))
[1] 1 2 3

18:14:18
R> foo2(c(1, 2, 3), a=c(1,2))
[1] 1 2 1
Warning message:
number of rows of result

        is not a multiple of vector length (arg 2) in: cbind(1, x, a)

> On 7/23/06, Gregor Gorjanc <gregor.gorjanc@gmail.com> wrote:

>> Hello!
>>
>> I am writting a function, which should recycle one of its arguments if
>> length of the argument is approprate i.e. something like
>>
>> foo <- function(x, a)
>> {
>> n <- length(x)
>> if(length(a) < n) { # recycle a
>> oldA <- a
>> a <- vector(length=n)
>> a[1:n] <- oldA
>> }
>> ## ...
>> return(a)
>> }
>>
>> foo(c(1, 2), a=c(1, 2))
>> foo(c(1, 2), a=c(1))
>>
>> I am now wondering if there is any general/generic functions for such
>> task.
>>
>> Thanks!
>>
>> --
>> Lep pozdrav / With regards,
>> Gregor Gorjanc
>>
>> ----------------------------------------------------------------------
>> University of Ljubljana PhD student
>> Biotechnical Faculty
>> Zootechnical Department URI: http://www.bfro.uni-lj.si/MR/ggorjan
>> Groblje 3 mail: gregor.gorjanc <at> bfro.uni-lj.si
>>
>> SI-1230 Domzale tel: +386 (0)1 72 17 861
>> Slovenia, Europe fax: +386 (0)1 72 17 888
>>
>> ----------------------------------------------------------------------
>> "One must learn by doing the thing; for though you think you know it,
>> you have no certainty until you try." Sophocles ~ 450 B.C.
>>
>> ______________________________________________
>> R-help@stat.math.ethz.ch mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
-- 
Lep pozdrav / With regards,
    Gregor Gorjanc

----------------------------------------------------------------------
University of Ljubljana     PhD student
Biotechnical Faculty
Zootechnical Department     URI: http://www.bfro.uni-lj.si/MR/ggorjan
Groblje 3                   mail: gregor.gorjanc <at> bfro.uni-lj.si

SI-1230 Domzale             tel: +386 (0)1 72 17 861
Slovenia, Europe            fax: +386 (0)1 72 17 888

----------------------------------------------------------------------
"One must learn by doing the thing; for though you think you know it,
 you have no certainty until you try." Sophocles ~ 450 B.C.

______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Received on Mon Jul 24 02:23:27 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Mon 24 Jul 2006 - 04:17:17 EST.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.