# Re: [Rd] x[1,], x[1,,], x[1,,,], ...

From: Robin Hankin <r.hankin_at_noc.soton.ac.uk>
Date: Tue 29 Nov 2005 - 15:36:51 GMT

Hi everyone

apltake() is part of magic_1.3-20, which I only uploaded to CRAN this morning. Perhaps I should have mentioned this!

[
this version of the magic package also includes a whole slew of functions that operate on arbitrary dimensioned arrays including adiag(), apad(), arow(), arot(), arev()

enjoy!
]

On 29 Nov 2005, at 15:17, Gabor Grothendieck wrote:

> I couldn't find it:
>
>> library(magic)
>> apltake
>
> On 11/29/05, Robin Hankin <r.hankin@noc.soton.ac.uk> wrote:
>> Hi everyone
>>
>>
>> apltake(x,1)
>>
>> [where apltake() is part of library(magic)]
>>
>> does this.
>>
>> best wishes
>>
>> Robin
>>
>>
>>
>>
>> On 23 Nov 2005, at 10:50, Henrik Bengtsson wrote:
>>
>>> Hi,
>>>
>>> is there a function in R already doing what I try to do below:
>>>
>>> # Let 'x' be an array with *any* number of dimensions (>=1).
>>> x <- array(1:24, dim=c(2,2,3,2))
>>> ...
>>> x <- array(1:24, dim=c(4,3,2))
>>>
>>> i <- 2:3
>>>
>>> ndim <- length(dim(x))
>>> if (ndim == 1)
>>> y <- x[i]
>>> else if (ndim == 2)
>>> y <- x[i,]
>>> else if (ndim == 3)
>>> y <- x[i,,]
>>> else ...
>>>
>>> and so on. My current solution is
>>>
>>> ndim <- length(dim(x))
>>> args <- rep(",", ndim)
>>> args[1] <- "i"
>>> args <- paste(args, collapse="")
>>> code <- paste("x[", args, "]", sep="")
>>> expr <- parse(text=code)
>>> y <- eval(expr)
>>>
>>> ndim <- length(dim(x))
>>> args <- rep(",", ndim)
>>> args[1] <- "i"
>>> args <- paste(args, collapse="")
>>> code <- paste("x[", args, "]", sep="")
>>> expr <- parse(text=code)
>>> y <- eval(expr)
>>>
>>> Is there another way I can do this in R that I have overlooked?
>>>
>>> /Henrik
>>>
>>> ______________________________________________
>>> R-devel@r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>> --
>> Robin Hankin
>> Uncertainty Analyst
>> National Oceanography Centre, Southampton
>> European Way, Southampton SO14 3ZH, UK
>> tel 023-8059-7743
>>
>> ______________________________________________
>> R-devel@r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>

--
Robin Hankin
Uncertainty Analyst
National Oceanography Centre, Southampton
European Way, Southampton SO14 3ZH, UK
tel  023-8059-7743

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Wed Nov 30 02:40:41 2005

This archive was generated by hypermail 2.1.8 : Wed 30 Nov 2005 - 11:21:40 GMT