按条件列的总和

时间:2017-06-14 18:18:38

标签: r

如果第1列是> .25,请尝试总结第3列 if(df$V1>.25){sum(df$V3)} ##这会返回错误

    if (df$V1 > 0.25) { :
  the condition has length > 1 and only the first element will be used

当第一列为> .25

时,任何代码都要汇总第3列
0.1287953 3 12 1
1.094262 13 14 3
0.5962845 8 17 4
0.6511204 7 19 5
0.2533915 4 6 2
0.8222555 6 18 6
0.08695875 3 7 1
0.6096232 6 6 2
1.583204 24 7 1
0.08337463 4 7 1
0.06398186 1 11 2
0.2713974 4 11 2
0.6205648 13 4 1
1.276595 15 14 3

1 个答案:

答案 0 :(得分:1)

如果您只想对第3列中的条目求和,其中第1列条目为> 0.25:

inds <- (df$V1 > 0.25)
inds
# [1] FALSE  TRUE  TRUE  TRUE  TRUE  TRUE FALSE  TRUE  TRUE FALSE FALSE  TRUE  TRUE  TRUE

只需将其用于第三列的子集:

sum( df$V3[ inds ] )
# 116

或简称:sum( df$V3[ df$V1 > 0.25 ] )