Skip to content
Back to formatted view

Raw Message

Message-ID: <AA220C01-6DD6-467E-9638-8B73104316EB@me.com>
Date: 2012-10-12T15:53:44Z
From: Marc Schwartz
Subject: Loss of dimensions in subsetting arrays
In-Reply-To: <20121012125220.60082air9p6af80k.mkarhune@webmail.helsinki.fi>

On Oct 12, 2012, at 4:52 AM, Markku Karhunen <markku.karhunen at helsinki.fi> wrote:

> 
> Hi all,
> 
> I've been wondering for a long time why R drops the dimensions of an array/matrix when you try to take a subset of one column. I mean this:
> 
> dim(A)
> [1] 2 5 2
> B=A[1,,]
> dim(B)
> 5 2 # so now dim(B)[3] doesn't work
> C=B[2,]
> dim(C)
> NULL # so now nrow(C) doesn't work
> 
> Typically, you can get rid of this by writing as.matrix, as.array(...) but that generates extra lines of code. This is really annoying. Does anybody know how to turn this behaviour off?
> 
> best,
> Markku Karhunen
> Uni. Helsinki


You can save yourself a lot of time if you visit the R FAQ as your first action item when such questions come up. In this case:

  http://cran.r-project.org/doc/FAQ/R-FAQ.html#Why-do-my-matrices-lose-dimensions_003f

Regards,

Marc Schwartz