在 r 中数组的新维度中平均每天 25 年

Average each day for 25 years in a new dimension of the array in r

我有一个 dim= c(36,28,9502) 的数组,其中第一个是纬度,第二个是经度,第三个时间(以天为单位)

我想在第三个昏暗中获得每 365 年的平均值(因为我消除了闰日)。如果可能的话,把它调成四级调暗就好了,但这是不可能的,只是结果会很好

我尝试了 apply,但无法使其适用于 365 的跳跃序列和 for 功能,但我无法使其达到平均值(我没有完全体验)

ADTN <-c(36,28,9502) AA <- apply(ADTN, c(1,2), FUN=mean)

另一种方式

for (i in seq(0,365,by=1)) { A[i] <- seq(0,9502,by=365) ADTN <- ADTN[,,A[i]] print(ADTN[i]) }

我的预期结果是 c(36,28,26,365) 其中 26 是年和 365 天。如果不只是 365 的结果,我会把它取回来。 非常感谢您的阅读。

目前还不完全清楚如何根据需要获得 4 维结果,但像这样的东西可能会给你对大小为 365 的块的平均值:

ADTN <- rnorm(36 * 28 * 9502)
ADTN <- array(ADTN, dim = c(36, 28, 9502))
apply(ADTN, c(1,2), FUN = function(x) {z <- rep(1:(9502/365+1), each = 365, length.out = 9502); by(x, z, mean)})

这给出了维度 (27, 36, 28) 的结果数组