aggregate over x cases
try this, library(plyr) ddply(d, .(block, trial), function(.d) .d[1:2, ])
block trial x y 1 1 1 605 150 2 1 1 603 148 3 1 2 607 148 4 1 2 605 152
HTH, baptiste
On 11 May 2009, at 13:49, Jens B?lte wrote:
Hello, I have been struggling for quite some time to find a solution for the following problem. I have a data frame which is organized by block and trial. Each trial is represented across several rows in this data frame. I'd like to extract the first x rows per trial and block. For example block trial x y 1 1 1 605 150 2 1 1 603 148 3 1 1 604 140 4 1 1 600 140 5 1 1 590 135 6 1 1 580 135 7 1 2 607 148 8 1 2 605 152 10 1 2 600 158 ..... Selecting only the the first two rows per trial should result in block trial x y 1 1 605 150 1 1 603 148 1 2 607 148 1 2 605 152 The data I am dealing with a x-y coordinates (samples) from an eye- tracking experiment. I receive the data in this format and need to eliminate unwanted samples. Thanks Jens B?lte <ATT00001.txt>
_____________________________ Baptiste Augui? School of Physics University of Exeter Stocker Road, Exeter, Devon, EX4 4QL, UK Phone: +44 1392 264187 http://newton.ex.ac.uk/research/emag