如何添加矩阵元素来创建新矩阵?

时间:2016-10-12 13:25:26

标签: matlab

说我有一个矩阵

x = [1 2 3 4 ] 

我想创建一个矩阵,添加两个元素并输出第三个?

y = [1+2 3+4]
y = [3 7]

对于四个值,我可以做y = [x(1)+ x(2)x(3)+ x(4)]。 如果x更大更可变(比如一千个元素),我该怎么做呢?我该怎么编程?

我已经在这两天苦苦挣扎了...提前感谢...

1 个答案:

答案 0 :(得分:5)

一种简单的方法是将原始数组x重塑为一个包含k行的矩阵,k是你在一起求和的元素数(这里2,对不起,我不知道如何解释这个),然后只需在此矩阵上调用sum,该矩阵将计算每列的总和并将其输出到新的矢量y

示例:

x = [1:10] 

block = 2

r = reshape(x,block,[])

所以这里r看起来像这样:

r =

     1     3     5     7     9
     2     4     6     8    10

因此,使用sum上的第一维调用r会产生以下结果:

y = sum(reshape(x,block,[]),1)

y =

     3     7    11    15    19