web-dev-qa-db-ja.com

行列とベクトルの要素ごとの乗算?

m X nの各列に、ループを使用するよりも効率的なサイズmの列ベクトルを要素ごとに乗算する、オクターブ単位の組み込み関数はありますか?

19
6nagi9

ベクトルをm x n行列に変換するために必要な回数だけ複製してから、組み込みの要素ごとの乗算演算子.*を使用できます。

>> A = [1 2; 3 4; 5 6];
>> B = [1; 2; 3];

>> A .* repmat(B, 1, columns(A))
ans = 

    1    2
    6    8
   15   18
37
Adam Lear

私はAnnaLearの答えを試していませんが、nobarがその答えでコメントしたように、Octaveは現在放送を行っています。したがって、A。* Bを実行する必要があります。自動製品ブロードキャストが適用されていることを示す警告が表示されます

>> A.*B
warning: product: automatic broadcasting operation applied
ans =

 1    2
 6    8
15   18
3
user3344591