我有一个名为A的矩阵50x120x185,其中50x120是一系列纬度和经度坐标,185是经过时间的坐标。 另一个变量1x185和我需要通过第三维时间(185)将此变量与矩阵的每个坐标相关联。
A =(50,120,185)
B =(1 2 3 4 5 ..)
我尝试使用以下代码重塑A:
D = reshape(A,[],size(A,3));
但是当我试图关联
时G = corr2(D',B');
我收到了错误
Error using corr2>ParseInputs (line 39)
A and B must be the same size.
Error in corr2 (line 21)
[a,b] = ParseInputs(varargin{:});
有没有人知道一种不同的方法来让我的代码将B与每个纬度和经度相关联到A的第三维?
值得注意的是A有很多NaN的
答案 0 :(得分:0)
根据我的理解,你想要做50x120 = 6000的相关性,每个相关性是A的1x185子集与B之间的相关性。如果这是真的,你需要调用corr
每个相关性。
尝试使用arrayfun(@(i) corr(Ap(i,:),B), 1:size(Ap,1))
,Ap = reshape(A, [], size(A,3)
。