Given a data frame df
with columns d
, c
, v
. How do I find the value of d
for the maximum value of v
among the subset of records where c == "foo"
?
I tried this:
df[df$v==max(df$v) & df$c == "foo","d"]
But I got:
character(0)
Yo can do as follows:
with(df, d[v== max(v[c=="foo"])])
EDITED:
If you want to get the value of d
for all the levels of c
:
library(plyr)
ddply(df, "c", subset, v==max(v))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With