如何在Matlab中复制矩阵的所有内部列和总和列对

时间:2013-03-26 22:29:22

标签: matlab matrix matrix-multiplication

假设我有一个矩阵A

 1     2     3     4     5
 1     2     3     4     5
 1     2     3     4     5
 1     2     3     4     5
 1     2     3     4     5

如何复制A内部列以获取新矩阵B

 1     2     2     3     3     4     4     5
 1     2     2     3     3     4     4     5
 1     2     2     3     3     4     4     5
 1     2     2     3     3     4     4     5
 1     2     2     3     3     4     4     5

请注意A的第一列和最后一列是独立的。然后我需要将行对相加以得到另一个矩阵C

 3     5     7     9
 3     5     7     9
 3     5     7     9
 3     5     7     9
 3     5     7     9
  1. 我的矩阵的大小并不总是5x5,元素并不总是那么好,但矩阵总是方形的。

  2. 需要生成或输出矩阵B。这只是我最初想到的最终矩阵C

  3. 我的目标是合理有效,所以我想完成这个没有一个for循环。

  4. 如何针对任意矩阵大小nxn完成此操作?

1 个答案:

答案 0 :(得分:5)

很简单。 。

C = A(:,2:end) + A(:,1:end-1)