У меня есть 2d-numpy-array (28x28), и я хотел бы установить случайные значения для всех тех индексов, которые имеют значение ниже 50. Я попробовал кое-что:
myarray[myarray < 50] = random.randint(80,100)
Это не работает правильно, потому что все выбранные индексы получают одинаковое случайное значение.
Я хотел бы иметь разные случайные значения.
for y in range(28):
for x in range(28):
if myarray[y,x] < 50:
myarray[y,x] = random.randint(80,100)
Приведенный выше код решает проблему, но я думаю, что она не работает эффективно, потому что она работает очень медленно с большими наборами данных.
Есть ли лучшая функция?