There are two matrix.
A = [1 4 3 4 5
6 6 8 9 1
1 2 1 4 5
8 1 2 1 5
9 1 9 2 2
8 8 1 6 4];
B = [1 2 9 2 5];
How can I minus each row of Matrix A by B to get C? The result C =
[0 2 -6 2 0
5 4 -1 7 -4
0 0 -8 2 0
7 -1 -7 -1 0
8 -1 0 0 -3
7 6 -8 4 -1]
I know I can do a loop. But is there an easier way? Any suggestion would be appreciated!
The loop is:
m = size(A);
for i = 1 :length(A)
for n = 1:m(1)
C(n,i) = A(n,i) - B(i);
end
end

 채택된 답변

the cyclist
the cyclist 2012년 6월 24일

0 개 추천

bsxfun(@minus,A,B)

댓글 수: 1

Xiao Tang
Xiao Tang 2012년 6월 24일
Thanks man. That's exactly what I am looking for.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by