我有一个序列
A = [1:5]
然后我做了它的随机排列
B =perms(A);
C = B(randperm(size(B,1)), :)
然后我从整个群体中随机选择一个5行的样本,如下所示
sample = C(1:5,1:5)
现在我对样本中的每一行进行了操作,
现在,当我想从总体中选择一个新样本,但我的代码一次又一次地选择相同的样本,直到我的条件结束时,我的问题就出现了,这是我的代码,
clc
clear all
A=[1:5]
B=perms(A);
C = B(randperm(size(B,1)), :)
value_of_cmax = zeros(1,5);
for P=1:24
if P<= 24
sample = C(1:5,1:5)
sample_shuffled = sample(randperm(5),:)
below my operation on each row in sample
else
end
现在,如果循环再次进行第二次,它将再次获取样本。。并不新鲜。:(
这是因为您没有更新sample的值,而是一次又一次地使用相同的sample值!
如果我正确理解了你的问题,那么这可能会有所帮助:
clc
clear all
A=[1:5]
B=perms(A);
value_of_cmax = zeros(1,5);
for P=1:24
C = B(randperm(size(B,1)), :);
sample = C(1:5,1:5)
if P<= 24
sample_shuffled = sample(randperm(5),:)
else end
end