In a given data.table what would be the syntax to select column V1 where V2 = max(V2), grouped by V3.
For example: In the mtcars dataset, I would like to find out what is the hp that corresponds to the observation equal to max(disp), grouped by cyl
Here is my ungraceful solution, using which:
mtcars <- data.table(mtcars)
mtcars[which(mtcars$disp %in% mtcars[, max(disp), by = .(cyl)]$V1), .(cyl,hp)]
cyl hp
1: 6 110
2: 4 62
3: 8 205
Is there a more "data.table" way of achieving the same result?