请注意,下面的代码是从Matlab文档中获得的,除了底部。
function B = nway(A,n)
% Compute average of every N elements of A and put them in B.
if ((mod(numel(A),n) == 0) && (n>=1 && n<=numel(A)))
B = ones(1,numel(A)/n);
k = 1;
for i = 1 : numel(A)/n
B(i) = mean(A(k + (0:n-1)));
k = k + n;
end
for循环代码意味着什么,尤其是以下行?
for i = 1 : numel(A)/n
i
如何将其插入B(i)
?
答案 0 :(得分:5)
Matlab中的for循环构造为
for iterationVariable = listOfValues
do something
end
iterationVariable
将在循环的第一次迭代中取listOfValues
的第一列的值,然后取第二列的值等。然后,您可以使用{{1}在你的计算中。
iterationValue
因此,会将for i=1:numel(A)/n
的值设置为i
,最高值为1,2,3...
。
"number of elements of A divided by n"
是一个索引操作,它返回数组B(i)
的{{1}}元素。
正如@HighPerformanceMark建议的那样,我非常建议在命令行中尝试这些表达式,或者通过优秀的Matlab文档的“入门”部分来完成。