我有一些矩阵:
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]
Run Code Online (Sandbox Code Playgroud)
什么是制作以下矩阵的代码:
Result = [1 2 9 9 10 11 5 5 5 6;
1 2 9 9 10 11 5 5 5 6]
Run Code Online (Sandbox Code Playgroud)
注意:实际上,上面的矩阵是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
Run Code Online (Sandbox Code Playgroud)
和.我将第一行的第一行和第二行的第二行相加.
要做你上面说的话:
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;
Run Code Online (Sandbox Code Playgroud)
关键是,您可以选择矩阵的子区域,并为其指定另一个矩阵.您只需要确保赋值的两侧都是相同的形状.