matrix vector substraction

z=[1,2,3,4,5,6,7,8;4,5,6,7,8,9,0,1;1,2,3,4,5,6,7,8;10,11,12,13,0,0,0,0];
y=[1,2,3,4];
how can i find z-y without loops thanks.

 Accepted Answer

M = bsxfun(@minus,z,y')
assuming you want each row of y transpose (or column of y as it is) subtracted from each row of z. Otherwise you'll have to define how you want the subtraction to works since z/y are different sizes.

More Answers (2)

Amey
Amey on 11 Oct 2011

0 votes

To do matrix subtraction, dimensions of both the matrices should be same. Here its not the case. Matrix z is 4*8 while matrix y is 1*4
osman
osman on 11 Oct 2011

0 votes

i want each row of y subtracted from each row of z.

1 Comment

each column of y as it is, i.e. each row of y-transpose? See my answer.

Sign in to comment.

Categories

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!