Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
以下があるとします。
x <- matrix(1:9, nrow=3) y <- c(1,2,3) x%*%y y%*%x
行列の乗算が未定義ではないのはなぜですか? xこれは 3 x 3 行列でyあり、1 x 3 行列であることがわかっています。したがってx %*% y、定義する必要はなくy %*% x、1 x 3 の行列にする必要があります。
x
y
x %*% y
y %*% x
幸いなことに (状況によっては残念ながら) 多くの R 演算子 (既定の状態) がオーバーロードされており、「ボンネットの下」であらゆる種類の処理を実行して%*%いRますy。 . 入力するとき
%*%
R
y3 x 1 のマトリックスを作成し、入力すると
y1 x 3 の行列を作成します。
入力するときと比較してみてください
x %*% as.matrix(y)
と
t(as.matrix(y)) %*% x
それぞれ