1

mathJS パッケージを使用して、ベクトル演算と行列演算を実行しようとしています。

転置を乗算して行列に変換したいベクトルがあります。

期待される結果は

a   = [1 1 1], [1x3] vector
a^T = [1 1 1]^T, [3,1] vector

           [1, 1, 1]
 a^T * a = [1, 1, 1]
           [1, 1, 1]

何らかの理由で、javascript で列ベクトルを作成する際に問題が発生しています。

const test1 = math.multiply(math.transpose([1, 1, 1]), [1, 1, 1]);
const test2 = math.multiply([1, 1, 1], math.transpose([1, 1, 1]));

test1 と test2 の両方が 3 を返します。

4

1 に答える 1

1

ブラケットがありませんでした。

const test1 = math.multiply(math.transpose([[1, 1, 1]]), [[1, 1, 1]]);

の次元[1, 1, 1]は 1 ですが[[1, 1, 1]]、 の場合は 1x3 です。

于 2021-11-18T09:42:55.873 に答える