如何在Matlab挑出一组数据中所有不连续的数

Matlab怎么判断数据的连续性,比如有一列向量里面连续数字从1-100到1-3都有,怎么把所有小于1-10的连续给提出来

先要获取里面连续的段,然后获取里面的小于1~10的

clc;clear
A  = [1:2, 1:20, 5:8, 11:20];
c1 = 1;
arrset = cell(0,0);
while(c1<numel(A))
    c2 = 0;
    while (c1+c2+1<=numel(A)&&A(c1)+c2+1==A(c1+c2+1))
        c2 = c2+1;
    end
    if(c2>=1)
        arrset= [arrset;(A(c1:1:c1+c2))];
    end
    c1 = c1 + c2 +1;
end
p = cellfun(@(i)(min(i)>=1)&&(max(i)<=10), arrset); % 把所有小于1-10的连续给提出来
arrset = arrset(p);
celldisp(arrset)

结果:

arrset{1} =
 
     1     2

 
 
arrset{2} =
 
     5     6     7     8

致谢我原先的Perishare百度回答:
matlab如何判断一组数是连续的?_百度知道

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632