[R] the first and last case

2006-07-26 Thread Mauricio Cardeal
Hi all Sometime ago I asked for a solution about how to aggregate data and the help was wonderful. Now, I´d like to know how to extract for each individual case below the first and the last observation to obtain this: ind y 18 19 27 2 11 39 3 10 4 8 4 5 # Below the

Re: [R] the first and last case

2006-07-26 Thread Jacques VESLOT
do.call(rbind,lapply(split(dat, dat$ind), function(x) x[c(1,nrow(x)),])) --- Jacques VESLOT CNRS UMR 8090 I.B.L (2ème étage) 1 rue du Professeur Calmette B.P. 245 59019 Lille Cedex Tel : 33 (0)3.20.87.10.44 Fax : 33 (0)3.20.87.10.31

[R] R: the first and last case

2006-07-26 Thread Guazzetti Stefano
could it be dat[unlist(tapply(1:nrow(dat), ind, range)),] ? stefano -Messaggio originale- Da: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] conto di Mauricio Cardeal Inviato: 26 July, 2006 14:22 A: r-help@stat.math.ethz.ch Oggetto: [R] the first and last case

Re: [R] the first and last case

2006-07-26 Thread Carlos J. Gil Bellosta
Dear Jacques, I believe you need dat ordered by ind and y before you apply your solution, right? Sincerely, Carlos J. Gil Bellosta http://www.datanalytics.com http://www.data-mining-blog.com Quoting Jacques VESLOT [EMAIL PROTECTED]: do.call(rbind,lapply(split(dat, dat$ind), function(x)

Re: [R] the first and last case

2006-07-26 Thread Gabor Grothendieck
Try these: # 1 library(Hmisc) summary(y ~ ind, dat, fun = range, overall = FALSE) # 2 # or with specified column names f - function(x) c(head = head(x,1), tail = tail(x,1)) summary(y ~ ind, dat, fun = f, overall = FALSE) # 3 # another approach using by - same f as above do.call(rbind, by(dat$y,