你好
我想从q1这个矩阵里每次取出不同的项,我这样写的话可能会得到重复的值,这个可以怎么解决
S_1= unidrnd(30);
q1= randperm(30,S_1);
for i =1:numel(q1)
R=1:3;
random_num1 = R(randperm(numel(R),1));
random_num2 = q1(randperm(numel(q1),1));
e(1,:)=[random_num1 random_num2];
E1(i,:)=e(1,:);
end
提供一个思路:
矩阵A用于存储待抽取的元素,ind表示随机抽取数据的下标,A(ind)表示随机抽取出来的数据。每次抽取后更新A,更新方法为:
A = setdiff( A , A(ind) ) % 通过集合做差方式,去除已经抽取的元素