我是MATLAB的新手并不确定这一点。我有一个矩阵
matrix = [1 2 3 4;8 9 5 6];
现在我想迭代上面矩阵的列并检索列 在当前之前。因此,如果在迭代时,我们在第2列,那么我们应该检索第1列。
有人可以指出我正确的方向吗?我试过了
for v = matrix
disp(v-1)
end
但这不起作用。任何帮助将不胜感激。
答案 0 :(得分:4)
首先,我们需要找到矩阵中有多少列:
m = [1,2,3,4;9,8,5,6]
[rows, cols] = size(m)
接下来,我们将遍历所有列并打印出当前列:
for ii=1:1:cols
disp('current column: ')
m(:,ii) % the : selects all rows, and ii selects which column
end
如果您想要上一列,而不是当前列:
for ii=1:1:cols
if ii == 1
disp('first column has no previous!')
else
disp('previous column: ')
m(:,ii-1) % the : selects all rows, and ii selects columns
end
end