我有一个数据框,其中每一行代表一个记录的事件。举个例子,假设我测量了经过的汽车的速度,有些汽车不止一次地经过我。
cardata <- data.frame(
  car.ID = c(3,4,1,2,5,4,5),
  speed = c(100,121,56,73,87,111,107)
  )
我可以对列表进行排序并找出三个最快的事件...
top3<-head(cardata[order(cardata$speed,decreasing=TRUE),],n=3)
> top3
  car.ID speed
2      4   121
6      4   111
7      5   107
...但您会注意到,汽车 4 记录了两个最快的时间。如何在没有任何重复汽车 ID 的情况下找到三个最快的事件?我意识到,在这种情况下,可能“前 3 名”列表将不包括三个最快的事件。