我有一些数据,
A = [2 4 6 8 10]
B = [1 2 3 4 5 6 7 8 9 10]
Run Code Online (Sandbox Code Playgroud)
如何编写可以从B的所有值中减去A的每个值的程序.
为了更好地理解,
取A = 2,减去所有B = [1 2 3 4 5 6 7 8 9 10],
然后取A = 4,减去所有B = [1 2 3 4 5 6 7 8 9 10]
等等......
如果要创建一个新的数组C,在行中包含i结果B-A(i),则使用bsxfun:
A = [2 4 6 8 10];
B = [1 2 3 4 5 6 7 8 9 10];
C = bsxfun(@minus,B,A') %'#
C =
-1 0 1 2 3 4 5 6 7 8
-3 -2 -1 0 1 2 3 4 5 6
-5 -4 -3 -2 -1 0 1 2 3 4
-7 -6 -5 -4 -3 -2 -1 0 1 2
-9 -8 -7 -6 -5 -4 -3 -2 -1 0
Run Code Online (Sandbox Code Playgroud)
如果要创建C包含结果的新数组B-A(1)-A(2)-...,请编写
C = B-sum(A)
C =
-29 -28 -27 -26 -25 -24 -23 -22 -21 -20
Run Code Online (Sandbox Code Playgroud)