例如:数组[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
取3;6;13;并且取出3前一个位置数和3后一个位置数;取6前一个位置数和6后一个位置数;取13前一个位置数和13后一个位置数;
最后得到[1,8,9,10,11,15,16,17,18,19,20];取出的数为[2,3,4,5,6,7,12,13,14]
你好,只要给定一个数组a和另外一个数组b,就可以这么做
a = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20, 22, 24, 26, 28];
b = [3,6,13, 26]; % 取哪几个数字
c = ismember(a, b); % 找到这些数字所在位置
c = c | [false,c(1:end-1)] | [c(2:end), false]; % 前后都要
a1 = a(c) % 取出的数为
a2 = a(~c) % 最后得到的数
结果:
a1 =
2 3 4 5 6 7 12 13 14 24 26 28
a2 =
1 8 9 10 11 15 16 17 18 19 20 22
你是想这样吗
a=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20];
a([2:7])=[]
a([6:8])=[]
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!