将 180x360 数组乘以 156 项时间序列得到 180x360x156 数组


bsxfun(@times,RegressIndexFlux.(IndexNames{i}).(FluxNames{j}), Indices.(IndexNames{i}));

所以我的代码在上面。

bsxfun 的问题是我收到以下错误消息:

Error using bsxfun
Non-singleton dimensions of
the two input arrays must
match each other.

所以这里有一个问题:如果可能的话,我有没有办法按时间序列转换 180x360 数组,而不必使用 for 循环?(我在这里使用了许多 180x360 数组的结构)。基本上RegressIndexFlux是针对时间序列Indices回归的,我试图仅使用回归来重建时间序列。

不能

有不匹配的非单一实例维度。 排列第二个参数。假设A是一个m-by-n矩阵,B是一个(p-by-1)列向量:

A = rand(6,5); B = rand(4,1);
% m-by-n @times 1-by-1-by-p => m-by-n-by-p
C = bsxfun(@times,A,permute(B,[3 2 1]));
size(C)
ans =
     6     5     4

相关内容

  • 没有找到相关文章

最新更新