如何找到 R 中另一个变量(年)的子集(某些天)聚合的变量(x 值)的平均值?

How to find average of variable (x value) aggregated by subset (certain days) of another variable (year) in R?

我想看看是否可以使用聚合函数来计算多年的 9 月到 10 月的平均值。我想将 2021-9-1 至 2021-10-31 范围内的平均降雨量与前几年的相同范围进行比较,而不必为每一年写出平均计算.

DANHP 有 12 个变量,我使用的是:

aggregate(DANHP$value, list(DANHP$Year), subset(filter(DANHP$JULIAN >= 244 & DANHP$JULIAN <= 304)),
          FUN=mean)
Error in UseMethod("filter") : 
  no applicable method for 'filter' applied to an object of class "logical"

好像不能通过过滤的方式为命令定义一个子集,所以我想知道是否有其他方法。

理想情况下,输出类似于以下输出,但此输出计算每年所有天数的均值。我想查看每年相同子集的均值:9 月 1 日至 10 月 31 日(儒略日 244-304)。

aggregate(DANHP$value, list(DANHP$Year), FUN=mean)
   Group.1         x
1     2012 0.1455956
2     2013 0.1586712
3     2014 0.1376849
4     2015 0.1338904
5     2016 0.1476230
6     2017 0.2518082
7     2018 0.1467507
8     2019 0.1400603
9     2020 0.1759290
10    2021 0.1520301
11    2022 0.0000000

subset 代码中存在语法错误,其中 dplyr::filter(可能会被使用)。相反,subset 本身可以在

中使用 subset 参数
aggregate(value ~ Year, subset(DANHP, JULIAN >= 244 & JULIAN <=304), mean)