索引最低值作为第二标准

时间:2014-07-14 14:36:55

标签: r indexing ranking

我想通过索引从数据框中选择一个值(Z) 1)列Y ==“A”和 2)列X是最低的

对于后续数据帧,值“30”(来自Z列)应返回:

X=seq(1,5)
Y=c("A","A","B","B","C")
Z=seq(10,50,10)
df <- data.frame(X,Y,Z)

df[df$Y=="B" & ???,"Z"]

可以在一步内完成,还是必须先选择“B”和 然后在第二步中最低?

1 个答案:

答案 0 :(得分:0)

将所有内容放在一行中有点笨拙,但你可以这样做:

df[df$Y=="B" & df$X == min(df$X[df$Y=='B']), "Z"]

df[with(df, Y=='B' & X == min(X[Y=='B'])), 'Z']