I want to perform certain matrix substraction using vectorization

I have a mtrix say A = [2,5,7]' and another matrix B = [2,7,9]', now i want to subtract B from A in such a way like each element of B will get subtracted from all elements of A, like c = A - B then c should be like (Expected outcome) = [0 3 5, -5 -2 0, -7 -4 -2]
Its like each element of B will get deducted from all elements of A and result will be stored in row wise in new matrix row wise.I dont want to use any loops but only vectorization.

댓글 수: 1

When i am using this for larger dataset it is causing memory error:
Error using bsxfun Out of memory. Type HELP MEMORY for your options.
Where,
StartTime = currTime(1:LenRxDiv-1);
Data1 = StartTime.';
Data1_s = bsxfun(@minus ,ActTimeStop,Data1);
Value of LenRxDiv is 359574
ActTimeStop is 114020 * 1

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

 채택된 답변

Jan
Jan 2017년 8월 2일
편집: Jan 2017년 8월 2일
A = [2,5,7] % Row vector
B = [2,7,9].' % Column vector
C = A - B % Since R2016b
C = bsxfun(@minus, A, B) % <= 2016a

추가 답변 (0개)

카테고리

질문:

2017년 8월 2일

댓글:

2017년 8월 9일

Community Treasure Hunt

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

Start Hunting!

Translated by