Matlab R2016aでは、小さなXベクトルとYベクトルがペアになっています(10,000個の1x3 Xベクトルと10,000個の1x3 Yベクトルがペアになっています) 。各{X、Y}のペアについて、XとYの要素のペアごとの組み合わせごとに2スカラー引数関数を計算したいと思います(私の例では10,000の3x3行列が得られます)。定数関数でbsxfunが動作しない
私はこれらの計算を実行するのにbsxfunを使うことができると思っていましたが、簡単なテストをしようとするとうまくいきません。 bsxfun(@(x,y) x*y,[1 2],[1 2]')
リターン:
ans =
1 2
2 4
私が期待するものです。しかし、bsxfun(@(x,y) 1,[1 2],[1 2]')
リターン:
Error using bsxfun
Specified function handle produces invalid output dimensions. The function handle
must be a binary elementwise function.
。関数ハンドルはであり、常にスカラー1を返すバイナリの要素関数なので、bsxfun
の仕組みを理解していない限り、bsxfun
はones(2,2)
と同じ結果を返さなければなりません。
に依存します。私は通常、テストケースが、私が – Frank