Re: [R] the first and last case

From: Jacques VESLOT <jacques.veslot_at_good.ibl.fr>
Date: Wed 26 Jul 2006 - 23:09:37 EST

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

http://www-good.ibl.fr


Mauricio Cardeal a écrit :
> 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
> 1 8
> 1 9
> 2 7
> 2 11
> 3 9
> 3 10
> 4 8
> 4 5
>
> # Below the example:
>
> ind <- c(1,1,1,2,2,3,3,3,4,4,4,4)
> y <- c(8,10,9,7,11,9,9,10,8,7,6,5)
> dat <- as.data.frame(cbind(ind,y))
> dat
> attach(dat)
> mean.ind <- aggregate(dat$y, by=list(dat$ind), mean)
> mean.ind
>
> Thanks
> Mauricio
>
> ______________________________________________
> R-help@stat.math.ethz.ch 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.
>



R-help@stat.math.ethz.ch 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. Received on Wed Jul 26 23:14:12 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Thu 27 Jul 2006 - 00:17:05 EST.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.