R中的拟元素矩阵乘法

R中的拟元素矩阵乘法,r,matrix-multiplication,R,Matrix Multiplication,是否有内置函数或运算符在R中执行以下操作: a_ [,1] [,2] [1,] 1 4 [2,] 2 3 [3,] 3 2 b_ [,1] [1,] 2 [2,] -1 columnwise( a_, b_ ) [,1] [,2] [1,] 2 -4 [2,] 4 -3 [3,] 6 -2 一种选择是使长度相同,然后进行乘法 a_ * b_[,1][col(a_)] 或使用扫描 s

是否有内置函数或运算符在R中执行以下操作:

a_
     [,1] [,2]
[1,]    1    4
[2,]    2    3
[3,]    3    2
b_
     [,1]
[1,]    2
[2,]   -1

columnwise( a_, b_ )
     [,1] [,2]
[1,]    2   -4
[2,]    4   -3
[3,]    6   -2

一种选择是使长度相同,然后进行乘法

a_ *  b_[,1][col(a_)]

或使用
扫描

sweep(a_,  2, b_, `*`)

您可以使用
diag
中的向量形式,将
b
转换为适当的转换矩阵:

a_ %*% diag(c(b_))
     [,1] [,2]
[1,]    2   -4
[2,]    4   -3
[3,]    6   -2