This question already has an answer here:
I have a data frame with a grouping variable ("Gene") and a value variable ("Value"):
Gene Value
A 12
A 10
B 3
B 5
B 6
C 1
D 3
D 4
For each level of my grouping variable, I wish to extract the maximum value. The result should thus be a data frame with one row per level of the grouping variable:
Gene Value
A 12
B 6
C 1
D 4
Could aggregate
do the trick?
There are many possibilities to do this in R. Here are some of them:
Just using base R
Using sqldf and standard sql to get the maximum values grouped by another variable
https://cran.r-project.org/web/packages/sqldf/sqldf.pdf
or
Using the excellent Hmisc package for a groupby application of function (max) https://www.rdocumentation.org/packages/Hmisc/versions/4.0-3/topics/summarize