MATLAB提取/替换矩阵的特定范围

之前我在matlab里面跑程序的时候遇到过 变量会随迭代次数改变,请预分配内存以提高计算速度  的warning。只不过当时不清楚替换矩阵特定范围如何操作,因此将就了A=[A;B]这种形式来拼接。不过这样是无法消除warning的。

要替换特定范围内的矩阵,其实与选定矩阵某行某列是一样的。

例如:

对一个5X8的矩阵A,假如我要用一个3X3的矩阵B替换A中第二行第三列到第四行第五列的元素。

那么,可以写为

A(2:4,3:5)=B;

如果是提取矩阵前n行,或者后n行:

B=A(1:n,:); %提取矩阵前n行
C=A(end-n+1:end,:); %提取矩阵后n行

猜你喜欢

转载自blog.csdn.net/qq_33401821/article/details/79860898