【发布时间】:2020-10-14 11:03:47
【问题描述】:
我有两个 3D 数组,维度具体为[Longitudes][Latitudes][Time],两个数组分别是温度和降水在空间和时间上的观测值。
我想获得每个特定经纬度点的温度和降水数组之间的相关性(沿[Time] 维度)的二维矩阵[Longitudes][Latitudes]。
apply() 函数当时仅适用于一个数组,我提出的唯一解决方案是一个基本循环,分别是温度和降水 3D 数组 Ts 和 Ps 这是我写的:
corr.matix <- array(dim = dim(Ts)[c(1,2)])
for (i in seq(dim(Ts)[1])){
for (j in seq(dim(Ts)[2])){
corr.matix[i,j] <- cor(Ts[i,j,],Ps[i,j,])
}
}
它可以工作,但是速度很慢。
我的问题是,有没有更快(矢量化?)的方法来解决 R 中的这个简单问题?
【问题讨论】: