1
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.

ここで質問があります。可能であれば、for ループを使用せずに時系列で 180x360 配列を変換する方法はありますか? (ここでは 180x360 配列の多くの構造を使用しています)。基本的RegressIndexFluxには時系列に対して回帰してIndicesおり、回帰のみを使用して時系列を再構築しようとしています。

4

1 に答える 1

2

シングルトン以外の次元を一致させることはできません。2 番目の引数を並べ替えます。Am-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
于 2013-11-11T23:59:33.230 に答える