我有一个Matrix M,我想在Matlab中运行一个循环,循环变量i,j遍历所有M(i,j)。有人可以提供语法吗?
答案 0 :(得分:1)
首先你首先应该看看是否有一种方法可以使用向量操作而不是循环来做事,这是Matlab的优势并且通常运行得更快。但是,如果你需要使用循环(有时你无法绕过),有两种方法可以做到这一点,第一种是使用单个索引变量(numel
是矩阵中元素的数量) ,这将逐列逐列矩阵。
for i = 1:numel(M)
M(i) = %your code here
end
或通过每个行和列以您指定的方式(size(M, n)
其中n
是整数是第n维的大小(第一个是行数,第二个是列数,第三个是等级数,...))
for i = 1:size(M, 1)
for j = 1:size(M, 2)
M(i, j) = %your code here
end
end