On Tue, 6 Apr 2004 14:18:42 +0000 (UTC), you wrote: >Robin Hankin <rksh <at> soc.soton.ac.uk> writes: >> R> a <- matrix(1:9,3,3) >> But the following caught me off-guard: >> R> a <- matrix(1:9,3,3) >> R> a[a%%2==1] %+=% 1000*(1:5) > >How about this way: > >> a <- matrix(1:9,3,3) >> "plus<-" <- function(a,value) a+value >> plus(a[a%%2==1]) <- 1000*(1:5) >> a > [,1] [,2] [,3] >[1,] 1001 4 4007 >[2,] 2 3005 8 >[3,] 2003 6 5009
Wouldn't a clearer syntax to follow be Pascal's? I.e. inc <- function(a, b) { eval.parent(substitute(a <- a + b)) } Then in order to increment x[3], you'd use inc(x[3], 1) etc. Duncan Murdoch ______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html