[R] Help on apply() function

Sarah Goslee sarah.goslee at gmail.com
Wed Apr 29 03:09:51 CEST 2009


You are indeed missing something. x is _one row_ of z, not the index
specifying that row. So what you want is:
apply(z, 1, function(x)sum(x[1]*1, x[2]*3))

Thanks for including a reproducible example.

Sarah

On Tue, Apr 28, 2009 at 9:02 PM, megh <megh700004 at yahoo.com> wrote:
>
> Hi all, can you please clarify me what is the wrong with following codes :
>
> set.seed(30)
> z = matrix(rnorm(10), 5, 2)
> apply(z, 1, function(x) sum(z[x,1]*1, z[x,2]*3))
>
> However I can not get the desired result. For example, "sum(z[1,1]*1,
> z[1,2]*3)" gives -5.822442 which is actually correct. Am I missing something
> in apply() function?
>
> Regards,
>
>
> -



-- 
Sarah Goslee
http://www.functionaldiversity.org




More information about the R-help mailing list