Scilab - for循环 - 从不同长度的矩阵中找到匹配的数据点 - 索引错误

问题描述 投票:0回答:2

在Scilab中我试图找到匹配的数据点(时间)然后索引这些点(a1连续,a2谨慎事件)。我可以使用此索引从其他数据集中选择数据点,然后我可以根据谨慎事件分析数据(a2)。

如果a1(i)== a2(j);'下面的代码在这一行给出'索引错误''

    a1 = [1,2,3,4,5,6,7,8,9,10,11,12,13]
    a2 = [3,4,6,8,10,12]

    x = 0

    for i = x:length(a1);
        for j = 0:length(a2);
            if a1(i) == a2(j);
                disp(x)
            end
        end
    end

如果有任何熟练的Scilab用户在那里提供帮助,我们将不胜感激。

data-analysis scilab
2个回答
0
投票

请看相交功能。它以高效的方式完全符合您的要求


0
投票

我发现了这个问题。无效索引是由于矩阵没有零索引。

a1 = [1,2,3,4,5,6,7,8,9,10,11,12,13]
a2 = [3,4,6,8,10,12]

x = 1;

for i = 1:13;
        for j = x:6;
        if a1(i) == a2(j);
            disp(a2(j))
            x = j
        end
    end
end
© www.soinside.com 2019 - 2024. All rights reserved.