matlab循环语句for(matlab循环语句for与条件语句)

Matlab for 循环语句

没仔细研究你那个拟合函数的用法。

不过像这种需要分段处理数据的情况很多,有种在matlab里很常用的技巧感觉你可以学学:

假设原始数据(xdata)是一列100个数,你需要一次处理13个,那么下面这段代码先将这100数“折叠”成一个13行的矩阵(x)。我这个例子里是折叠成13*8的矩阵了。

因为100不能整除13,所以会在最后补零。如果你不需要补零,而是把最后的零头扔掉,那么就把

ncol=ceil(nxdata/n);

ncol=fix(nxdata/n);

最后就可以在循环里一列一列的处理数据了。我这个例子只是y(:,i)=x(:,i)而已,你的情况应该就是调用你自已写的拟合函数。

y=y(:);

把数据还原成一维的。

如果你需要把之前补零的值删掉也可以在还原成一维的时候去掉。

以下是一个小例子,仔细研究一下就能学会这个小技巧了。

xdata=(1:100).';

nxdata=length(xdata);

nrow=13;%假设你需要一次处理13个数据

ncol=ceil(nxdata/nrow);

x=zeros(nrow,ncol,'like',xdata);

size(x)

x(1:nxdata)=xdata(:);

y=zeros(nrow,ncol,'like',xdata);

fori=1:ncol

y(:,i)=x(:,i);

y=y(:);

如果你在处理数据之前,能保证折叠之后是整除的,即无需补零。还用我这个小例子,比如需要折叠成10行,也可以用reshape(xdata,10,[])。[]是让matlab自己算整除后是多少列。如:

x2=reshape(xdata,10,[]);

size(x2)

matlab for循环语句解释

本程序的功能是将矩阵I的**行、最后一行、**列、和最后一列的元素都清零。

本回答由网友推荐

循环语句主要有哪些?

循环语句(循环结构):while语句:“当…”语句;dowhile语句:“做…当…(时候)”语句;for语句:条件语句(即“(做)…为了…”语句)

matlab循环效率问题为什么matlab的循环效率很低???

matlab是解释语言,C是编译语言, 编译语言的速度更快一些。另个matlab是面向矩阵的编程, 写成矩阵形式比用循环的效率更高一些。

matlab循环语句for加什么才能算出循环次数?

if rem(m,i)==0;%rem求余数

m%在break之前输出m

i%同理输出i

break;%提前结束,跳出matlab循环语句

end从1开始,步长为0.01,到10结束: for i=1:0.01:10 for j=1:0.01:10 循环语句 disp(i) %显示次数 end disp(j) end

matlab中for的用法

for语句:

for i=1:2010

s=s+i;

while语句:

while j

原文链接:,转发请注明来源!