MATLAB: Subtract different column by different number

subtraction

I have a 1000×3 matrix. I want to subtract different column from different number. For example, the first column elements will all be subtracted from 10, those in the second column will be subtracted from 2, the third column will be subtracted from 3.
Any good ways to do this? Thanks a lot!

Best Answer

Patrick, use bsxfun:
A = [1 2 10; 1 4 20; 1 6 15];
A
A =
1 2 10
1 4 20
1 6 15
B = bsxfun(@minus, [1 2 3], A)
B =
0 0 -7
0 -2 -17
0 -4 -12