我有一个矩阵A.我想迭代矩阵的内部(B),同时也处理不属于B的行和列。
A = [1 4 5 6 7 1; B = [2 2 2 2;
8 2 2 2 2 1; 2 3 3 2;
9 2 3 3 2 1; 2 8 2 2];
0 2 8 2 2 1;
1 1 1 1 1 1];
我知道可以像这样选择A的一部分:
[rows,columns] = size(A);
B = A([2:1:rows-1],[2:1:columns-1]);
for i = 1:(rows*columns)
%do loop stuff
endfor
然而,这不会起作用,因为我还需要外部行和列来进行计算。如何在不改变A的情况下实现循环?
答案 0 :(得分:1)
那么,为什么不为内部矩阵使用两个索引?
%....
for i=2:rows-1
for j=2:cols-1
% here, A(i,j) are the B elements, but you
% can still access to A(i-1, j+1) if you want.
end
end
%....