Ich verstehe, dass durch "/"
Sie eine Matrix richtige Division meinen.
Sie können mrdivide
frim das pracma
Paket verwenden. Bitte sehen Sie sich das an.
https://www.rdocumentation.org/packages/pracma/versions/1.9.9/topics/mldivide
Dies würde Ihr Code sein:
library("pracma")
a1 = matrix(c(1,2,0,2,5,-1,4,10,-1),nrow=3,ncol=3)
a2 = matrix(c(1,2,4,2,5,10,0,-1,-1),nrow=3,ncol=3)
a3= matrix(c(1,0,0,0,1,0,0,0,1),nrow=3,ncol=3)
myfunction<-function (N,A,B) {
return(round(mrdivide((A*B)%*%N,B %*% N)))
}
result_matrix<-myfunction(a1,a2,a3)
dem Sie das Ergebnis, das Sie in den Kommentaren angegeben gibt.
Nicht jeder kennt Matlab. Aus diesem Grund werden reproduzierbare Beispiele empfohlen. Was macht '/' in Matlab? [editiert] –
Die Division von Matrizen ist nicht eindeutig definiert und kann entweder 'Ginv (B)% *% A' oder 'A% *% Ginv (B)' sein, wobei 'Ginv' eine verallgemeinerte R-Funktion zum Lösen der Inverse der Matrix ist . – dww
[This] (https://stackoverflow.com/questions/20116607/r-right-matrix-division) kann helfen – ANG