[R] curious about dimension of 'apply' output when MARGIN=1

Gabor Grothendieck ggrothendieck at gmail.com
Wed Jan 17 01:16:56 CET 2007


The reshape package has an idempotent apply, iapply:

> library(reshape)
> iapply(M,1,function(row) row+c(1,2))
     [,1] [,2]
[1,]    2    6
[2,]    3    7
[3,]    4    8

On 1/16/07, Benjamin Tyner <btyner at stat.purdue.edu> wrote:
> Reading the documentation for 'apply', I understand the following is
> working exactly as documented:
>
>  > M<-matrix(1:6,ncol=2)
>  > M
>     [,1] [,2]
> [1,]    1    4
> [2,]    2    5
> [3,]    3    6
>  > apply(M,2,function(column) column+c(1,2,3))
>     [,1] [,2]
> [1,]    2    5
> [2,]    4    7
> [3,]    6    9
>  > apply(M,1,function(row) row+c(1,2))
>     [,1] [,2] [,3]
> [1,]    2    3    4
> [2,]    6    7    8
>
> I'm not proposing any changes or extra arguments to 'apply'. Rather, I'm
> wondering what is the benefit for (or rationale behind) this somewhat
> unintuitive behavior in the case that MARGIN=1.
>
> Thanks,
> Ben
>
> ______________________________________________
> R-help at 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.
>



More information about the R-help mailing list