如何在仅考虑R中大于300的值的情况下取平均值

时间:2015-06-04 01:50:33

标签: r csv

我有一个包含值的数据框。我想取每列的平均值,但我只想考虑那些大于或等于300的值。

Example: Dataframe[,1]
      100
      200
      250
      300
      300
      400
      400

    Average = 350.

1 个答案:

答案 0 :(得分:0)

mean(ifelse(Dataframe[,1] >= 300, Dataframe[,1], NA), na.rm = TRUE)

并立即为所有列提供:

do.call("cbind", lapply(DataFrame, function(x){mean(ifelse(x >= 300, x, NA), na.rm = TRUE)}))