What you have written does not work in Matlab - >> y = [0 0;0.5 0.5;1 1]
y = 0 0 0.5000 0.5000 1.0000 1.0000 >> z = [12, -6] z = 12 -6 . >> y .* z Error using .* Matrix dimensions must agree. When dimensions agree it you get the same result in R as in Matlab by using the * operator > y = matrix(cbind(c(0, 0.5, 1),c(0, 0.5, 1)),ncol=2) > y [,1] [,2] [1,] 0.0 0.0 [2,] 0.5 0.5 [3,] 1.0 1.0 > z = matrix(1:6, ncol=2) > z [,1] [,2] [1,] 1 4 [2,] 2 5 [3,] 3 6 > prod <- matrix(y*z,2) > prod [,1] [,2] [,3] [1,] 0 3 2.5 [2,] 1 0 6.0 > prod <- matrix(y*z) > prod [,1] [,2] [1,] 0 0.0 [2,] 1 2.5 [3,] 3 6.0 > John C Frain 3 Aranleigh Park Rathfarnham Dublin 14 Ireland www.tcd.ie/Economics/staff/frainj/home.html mailto:fra...@tcd.ie mailto:fra...@gmail.com On 19 November 2014 16:48, Boris Steipe <boris.ste...@utoronto.ca> wrote: > Or ... if you mean "simpler" as in "less to type", you can define your own > binary operator by enclosing it in "%" signs, and the assign any of the > previously proposed solutions, e.g. > > y = matrix(cbind(c(0, 0.5, 1),c(0, 0.5, 1)),ncol=2) > z = matrix(c(12, -6),ncol=2) > '%.*%' <- function(a,b) {a * rep(b, each=3)} > > > y %.*% z > > > [,1] [,2] > [1,] 0 0 > [2,] 6 -3 > [3,] 12 -6 > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.