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 <megh700...@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 ______________________________________________ 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.