我有一个较大的维度3的年度数据,名为tmp_array [1:143,1:134,1:8760],前两个维度是相对于坐标的,第三个维度是相对于小时的温度的。我希望最后得到平均每日温度(24小时内的平均温度)和一个数组tmp_array [1:143,1:134,1:365]。这是我放置的代码,但似乎与帐户不符。
temp<-apply(tmp_array, MARGIN=c(1, 2), mean)
这段代码似乎给了我一年中的平均值。 任何帮助将不胜感激。
答案 0 :(得分:3)
据我所知,您可以获得每个坐标(二维数组[143,134])一年中8760小时的平均温度。 您想在一年中的每一天都获得相同的结果吗? 在这种情况下,您可以先创建一个空数组来存储结果
new.array <- array(dim=c(143,134,24))
然后您可以沿边距3依次取24个观测值的平均值,从而获得每天的平均温度。
library(abind)
new.array <- array(dim = c(143, 134))
for (i in seq(1, 8760, 24)) {
new.array <- abind::abind(new.array, apply(my.array[1:143, 1:134, i:(i+23)], MARGIN=c(1, 2), mean), along = 3)
}
dim(new.array)
希望有帮助!