给定的数据帧df的列d,c,v.如何找到价值d为最大值v的中集的记录,其中c == "foo"?
我试过这个:
df[df$v==max(df$v) & df$c == "foo","d"]
Run Code Online (Sandbox Code Playgroud)
但我得到了:
character(0)
Run Code Online (Sandbox Code Playgroud)
哟可以这样做:
with(df, d[v== max(v[c=="foo"])])
Run Code Online (Sandbox Code Playgroud)
编辑:如果你想获得d所有级别的价值c:
library(plyr)
ddply(df, "c", subset, v==max(v))
Run Code Online (Sandbox Code Playgroud)