Matlab:为多个序列创建循环

时间:2014-05-29 10:22:35

标签: matlab loops for-loop sequence

我想在matlab中使用相同的for循环创建多个序列的循环,即从0001到0100以及从0150到0200。下面的matlab代码显然是错误的(部分for number = 1:100; 150:200;),并且包含在内以供澄清:

 for number = 1:100; 150:200;
    s = sprintf('%04d', number);
    filename = ['E:\XRD\Enamel\r5004b_'  s '.dat'];
    startRow = 5;

    end

2 个答案:

答案 0 :(得分:4)

它实际上并不遥远:试试这个

for i = [1:100, 150:200]

使用方括号将两个数组连接成一个。你可能认为你可以简单地使用

for i = 1:200

并且在循环内部有一个条件,当它检测到100时它跳转到150 - 这将不起作用,因为与c不同,MatLab分别跟踪循环变量(尽管循环变量在循环中可用 - 它有点令人困惑!)

答案 1 :(得分:3)

单独制作范围,然后将它们放入迭代的单个矢量中。

R1 = 1:100

R2 = 150:250

R_All = [R1 R2]

For i = R_All

End