在matlab中的向量中对两个连续元素进行操作

时间:2013-08-15 09:02:37

标签: matlab

我有一个向量A= [4 7 10]我想要做的是将每两个元素相加并将结果放在一个新的向量中。例如,矢量B= [11,17],它是4 + 7和7 + 10的总和。

所以如果有人能告诉我怎么能在没有循环的情况下这样做。

3 个答案:

答案 0 :(得分:5)

在我看来是:

B = A(1:end-1) + A(2:end);

答案 1 :(得分:4)

如果您希望将来添加3或4等组,这是一个很容易概括的替代方案:

n = 2
conv(A, ones(1, n), 'valid')

答案 2 :(得分:-1)

你可以这样做

B = A(:,1:end-1) + A(:,2:end);

此代码不仅限于行向量。它也适用于MxN矩阵。