Arrays R中的数组向量乘法

Arrays R中的数组向量乘法,arrays,r,vector,matrix-multiplication,multiplication,Arrays,R,Vector,Matrix Multiplication,Multiplication,我需要一个简单的矩阵代数或Kronicker乘积类型的运算,将R中的一个数组和一个向量相乘,得到一个特定的结果。假设我有一个数组: ar<-array(c(rep(1,9),rep(10,9),rep(100,9)),dim=c(3,3,3)) 相反。也就是说,是否有一个简单的操作允许我使用上面指定的向量将ar转换为ar2?谢谢 ar*rep(1:3,每个=9)应该可以工作 对于任意大小的数组和任意一组乘法器,您知道数组的尺寸和要执行元素乘法的轴(在本例中为z轴): each_argar

我需要一个简单的矩阵代数或Kronicker乘积类型的运算,将R中的一个数组和一个向量相乘,得到一个特定的结果。假设我有一个数组:

ar<-array(c(rep(1,9),rep(10,9),rep(100,9)),dim=c(3,3,3))
相反。也就是说,是否有一个简单的操作允许我使用上面指定的向量将
ar
转换为
ar2
?谢谢

ar*rep(1:3,每个=9)
应该可以工作

对于任意大小的数组和任意一组乘法器,您知道数组的尺寸和要执行元素乘法的轴(在本例中为
z
轴):


each_arg
ar*rep(1:3,each=9)
应该可以工作……好的,谢谢,我明白了。更一般地说,我们有
rep(c(1,2,3),每个=9)
。如果您将此作为解决方案添加,我将投票支持您:)
ar2<-array(c(rep(1,9),rep(20,9),rep(300,9)),dim=c(3,3,3))
each_arg <- prod(dim(ar)[1:2])
multipliers <- sample(1:10, 3)
ar2 <- ar * rep(multipliers, each=each_arg)