Hi all, I hope you can help.
I have a data frame 'df': group=c(rep(1,8),rep(2,10),rep(3,11)) var=rnorm(29) time=c(seq(1,8),seq(1,10),seq(1,11)) df=data.frame(group,var,time) I would like to extract the value from 'var' for each 'group' at 'time'=4 and repeat these extracted values in a new vector ('new') n times where n is the number of rows for each group. I did this by hand as below, but there must be a quicker way: subset=subset(df,df$time==4) subset group var time 4 1 0.2531270 4 12 2 -0.3600128 4 22 3 0.4194730 4 df$new=c(rep(0.2531270,8),rep(-0.3600128,10),rep(0.4194730,11)) Any questions please ask, Many thanks in advance, Ben Gillespie, Research Postgraduate o-------------------------------------------------------------------o School of Geography, University of Leeds, Leeds, LS2 9JT o-------------------------------------------------------------------o Tel: +44(0)113 34 33345 Mob: +44(0)770 868 7641 o-------------------------------o http://www.geog.leeds.ac.uk/ o-------------------------------------o @RiversBenG o--------------o ______________________________________________ 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.