Я могу легко создать случайный двоичный массив в Numpy, выполнив это
random_mask = np.random.randint(0,2, (r, c))
Но что я на самом деле хочу, так это установить максимальное число 1, которое может быть в массиве.
Например, если мне нужна бинарная матрица 5,5, я хочу, чтобы по всей матрице было случайным образом размещено не более 10 единиц, а остальные - 0 с.
Я думал о подходе, в котором ясгенерируйте случайный массив, как обычно, посчитайте количество единиц, которые в данный момент размещены, и каким-то образом вычтите те, которые мне не нужны.
Мне интересно, есть ли способ сделать это в numpy