Проблема, вероятно, возникает из-за того, что вы эффективно рандомизируете несколько раз: как с выбором подмножества строк, так и с рандомизацией самих циклов.т.е. ваши циклы должны быть установлены на sequential
, а не random
, потому что вы сами обрабатываете рандомизацию, выбирая подмножество строк.
Даже если вы это сделаете, у вас теперь есть вторая проблема:если вы выберете подмножество из 5 строк для каждого блока с помощью np.random.choice()
, эти выборки будут независимыми, и поэтому весьма вероятно, что некоторое переменное число строк будет выбрано несколько раз.Итак, вам нужно убедиться, что строки выбраны без замены во всем эксперименте.
Я бы предложил, чтобы вы случайным образом перемешали все 15 индексов строк в списке, а затем применили подмножества этого списка вкаждый блок.Таким образом, вы можете быть уверены, что не будет множественного выбора строк.Например:
row_order = range(15)
np.random.shuffle(row_order)
Затем в каждом из трех блоков вы будете использовать эти подмножества:
row_order[0:5]
row_order[5:10]
row_order[10:15]
Это дает вам случайный выбор в каждом блоке, но без дублирования строк.