这是一个关于在同一语句中多次递增MATLAB数组的一个值的问题,而不必使用for循环.
我将我的数组设置为:
>> A = [10 20 30];
Run Code Online (Sandbox Code Playgroud)
然后运行:
>> A([1, 1]) = A([1, 1]) + [20 3]
A =
13 20 30
Run Code Online (Sandbox Code Playgroud)
显然,20被忽略了.但是,我希望它被包括在内,以便:
>> A = [10 20 30];
>> A([1, 1]) = A([1, 1]) + [20, 3]
Run Code Online (Sandbox Code Playgroud)
会给:
A =
33 20 30
Run Code Online (Sandbox Code Playgroud)
是否有一个函数允许以一种漂亮的矢量化方式完成它?
(实际上,对数组的索引将包括多个索引,因此它可能是[1 1 2 2 1 1 1 1 3 3 3]等等,并且数字数组将以[20, 3]相同的长度递增(以上).)