Re: [R] ave and grouping

2009-03-02 Thread Gabor Grothendieck
There was an error in the line below. It should have been the following (i.e. the ix in extra[ix] was missing): sleep$newcol <- with(sleep, ave(1:nrow(sleep), group, FUN = function(ix) extra[ix][b[ix][1]])) On Mon, Mar 2, 2009 at 8:01 AM, Gabor Grothendieck wrote: > Try performing ave over

Re: [R] ave and grouping

2009-03-02 Thread Gabor Grothendieck
Try performing ave over the indexes rather than over extra itself: sleep$newcol <- with(sleep, ave(1:nrow(sleep), group, FUN = function(ix) extra[b[ix][1]])) On Mon, Mar 2, 2009 at 4:28 AM, Patrick Hausmann wrote: > Dear list, > > # I have a DF like this: > sleep$b   <- c(rep(8,10), rep(9,10))

Re: [R] ave and grouping

2009-03-02 Thread Dieter Menne
Patrick Hausmann uni-bremen.de> writes: > # I have a DF like this: > sleep$b <- c(rep(8,10), rep(9,10)) > sleep$me <- with(sleep, ave(extra, group, FUN = mean)) > sleep > > # I would like to create a new variable > # holding the b-th value of group 1 and 2. > > # This is not what I want, it

[R] ave and grouping

2009-03-02 Thread Patrick Hausmann
Dear list, # I have a DF like this: sleep$b <- c(rep(8,10), rep(9,10)) sleep$me <- with(sleep, ave(extra, group, FUN = mean)) sleep # I would like to create a new variable # holding the b-th value of group 1 and 2. # This is not what I want, it takes always the '8' from group '1' # and not t