【发布时间】:2020-03-19 02:22:48
【问题描述】:
我有一个大数组,其中包含每月降水值(维度=144(经度)*72(纬度)*395(时间)),其中时间从 1979-01-03(年/月/日)开始,结束于2011-11-03.
我需要首先计算每个月的均值和 sd(即每个月和域的每个点的一个均值和一个 sd)。我是这样做的:
months<-c(as.character(1:12))
years<-c(as.character(1979:2011))
lista<-list()
for (i in months){
lista[[i]]<-which(format(time2,"%m")==i) #time2 is the time dimension from the
# array, in format: 1979-01-03, 1979-02-03,etc.
}
monthly_means<-list(); monthly_sd<-list()
for(i in 1:length(lista)){
medias_mensuales[[i]]<-apply(precipitacion[,,lista[[i]]],c(1,2),mean)
sd_mensuales[[i]]<-apply(precipitacion[,,lista[[i]]],c(1,2),sd)
}
然后(这是我遇到麻烦的地方)每个学期(DJF、MAM、JJA、SON)的手段和 sd。首先提取每个三个月的数据然后做一些类似于我之前做的事情是不是一个好主意?
【问题讨论】:
-
使用函数
group_by和summarize查看包dplyr。见:jules32.github.io/2016-07-12-Oxford/dplyr_tidyr
标签: r multidimensional-array statistics mean