0

我有一些矩阵:

A = [ 1 2 3 4 5 6;
      1 2 3 4 5 6]

B = [ 6 5 4 3 2 1;
      6 5 4 3 2 1]

C = [ 1 2 3 4 5 6;
      1 2 3 4 5 6]

制作以下矩阵的代码是什么:

Result = [1 2 9 9 10 11 5 5 5 6;
          1 2 9 9 10 11 5 5 5 6]

注意:实际上上面的矩阵是上面已经重新排列的 3 个矩阵的总和,如下面的矩阵。#sum 是基于列的总和。

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

和。我将第一行与第一行相加,第二行与第二行相加。

4

1 回答 1

5

做你上面说的:

Result = zeros(size(A) + [0,4]);
Result(:,1:size(A,2)) = A;
Result(:,3:end-2) = Result(:,3:end-2) + B;
Result(:,5:end) = Result(:, 5:end) + C;

关键是,您可以选择矩阵的一个子区域,并为其分配另一个矩阵。你只需要确保分配的两边是相同的形状。

于 2012-07-27T18:09:31.827 回答