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.

 采纳的回答

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.

更多回答(2 个)

Amey
Amey 2011-10-11

0 个投票

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 2011-10-11

0 个投票

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

1 个评论

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

请先登录,再进行评论。

类别

在 帮助中心 和 File Exchange 中查找有关 Multidimensional Arrays 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by