如何用r语言求哈达马乘积

Python012

如何用r语言求哈达马乘积,第1张

r语言中计算哈达乘积(Hadamard product),和计算一般矩阵与矩阵的乘积一样,直接用m×n即可。

如matrix(c(1:8),2)*matrix(c(8:1),2)

> matrix(c(1:8),2)

[,1] [,2] [,3] [,4]

[1,]1357

[2,]2468

>matrix(c(8:1),2)

[,1] [,2] [,3] [,4]

[1,]8642

[2,]7531

> matrix(c(1:8),2)*matrix(c(8:1),2)

[,1] [,2] [,3] [,4]

[1,]8 18 20 14

[2,] 14 20 188

求和:f<-function(x) {

if(x==1)  1                

else     x+f(x-1)  }

或者尾递归:ff<-function(x,m=0){

if(x == 0)  m     

else    ff(x-1,m+x)  }

求阶乘:g<-function(x) {

if(x ==1) 1                     

else   x*g(x-1)  }

或者尾递归:gg<-function(x,acc=1){

if(x ==1) acc                       

else   gg(x-1,acc*x)  }