Hi,

On Aug 4, 2009, at 3:23 PM, Steve Jaffe wrote:


Suppose I have an n-diml array A and I want to extract the first "row" -- ie
all elements A[1, ...]

Interactively if I know 'n' I can write A[1,,,,,] with (n-1) commas.

How do I do the same more generally, eg in a script?

(I can think of doing this by converting A to a vector then extracting the approp elements then reshaping it to an array, but I wonder if there isn't a
more straightforward approach)

You actually don't have to convert A to a vector, you can use vector- style indexing into a matrix:

R> m <- matrix(1:20, 4)
R> m
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    5    9   13   17
[2,]    2    6   10   14   18
[3,]    3    7   11   15   19
[4,]    4    8   12   16   20

R> m[,3]
[1]  9 10 11 12

R> m[9:12]
[1]  9 10 11 12

You're just left to calculate the correct (linear) indices, which I guess isn't too (too) bad.

-steve

--
Steve Lianoglou
Graduate Student: Computational Systems Biology
  |  Memorial Sloan-Kettering Cancer Center
  |  Weill Medical College of Cornell University
Contact Info: http://cbio.mskcc.org/~lianos/contact

______________________________________________
R-help@r-project.org 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.

Reply via email to