我有一个包含值的数据框。我想取每列的平均值,但我只想考虑那些大于或等于300的值。
Example: Dataframe[,1]
100
200
250
300
300
400
400
Average = 350.
答案 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)}))