MATLAB产生1到N的有序数组,重新随机排列数组,删除数组中某一个元素

来源:互联网 发布:杭州数据分析企业 编辑:程序博客网 时间:2024/06/07 06:31

(1):生成一个1:N的有次序数组:

N = 100;

A=randperm(N);

B = sort(A);

运行:

B =[1     2     3     4     5     6     7     8     9    10]


(2):将数组

A=[8 3  4  9 12 16 18 34 1  2];

中的数据随机打乱

[m,n]=size(A);

B=randperm(n);

NewA = A(:, B);

运行:NewA = [4     8     2    12     9    18     3    16     1    34] (结果是随机的)



(3):删除数组中某一个数值的元素

 a=[1 2 3 4 5 6 7 8 9 10];

删除数组中值为3的数字

b = 3;

[c i]=setxor(a,b);

x=a(sort(i))

x =

     1     2     4     5     6     7     8     9    10


或者

a=[1 2 3 4 5 6 7 8 9 10];

b=3;

[c i]=setdiff(a,b);

x=a(sort(i))

x =

   1     2     4     5     6     7     8     9    10

0 0
原创粉丝点击