如何从另一个向量创建一个子向量,该向量包含在 R 编程中为真的所有值

how to make a sub vector from another vector that includes all values that are true in R programming

我是编程新手,遇到了一些问题。我有以下 2 个向量,一个有支出,另一个有 12 个月的收入: '''

revenue <- c(14574.49, 7606.46, 8611.41, 9175.41, 8058.65, 8105.44, 11496.28, 9766.09, 10305.32, 14379.96, 10713.97, 15433.50)
expenses <- c(12051.82, 5695.07, 12319.20, 12089.72, 8658.57, 840.20, 3285.73, 5821.12, 6976.93, 16618.61, 10054.37, 3803.96)

'''

我必须能够列出收入大于 12 个月平均收入的利润(收入 - 支出)。我好像想不通。

这就是我在下面用来尝试得到这个的东西: '''

for(i in 1:length(revenue)){
  if(revenue > mean.revenue){
  good_months <- c(revenue>mean.revenue)
  }
  }
good_months

'''

问题在于,它只会在那些月份得出 true 或 false。我怎样才能只获得真值?

也许你可以用这个

> which(revenue > mean(revenue))
[1]  1  7 10 11 12

> (revenue - expenses)[revenue > mean(revenue)]
[1]  2522.67  8210.55 -2238.65   659.60 11629.54