Я хочу сгенерировать большой массив случайных чисел, близких к 1. Есть ли быстрый способ сделать это, позволяющий установить желаемое соседство от 1, скажем, 1e-5?
Что бы ни? Но среднее значение должно быть 1.
np.random.uniform(low=1-1e-5,high=1+1e-5,size=10)





Проверьте модуль numpy.random:
Например, нормально распределенные числа со средним значением 1,0 и стандартным отклонением 0,002:
>>> numpy.random.normal(1, 0.002, (5,))
array([1.00246167, 0.99722898, 0.99793482, 1.00100399, 1.00004228])
Использование равномерного распределения:
>>> numpy.random.uniform(1-1e-5, 1+1e-5, (5,))
array([1.00000668, 1.00000037, 0.99999398, 0.99999736, 1.00000645])
Используйте равномерное распределение:
>>> window = 1e-5
>>> np.random.uniform(low=1-window, high=1+window, size=10)
array([ 1.00000539, 0.99999055, 1.00000759, 0.99999228, 1.00000737,
1.00000557, 1.00000522, 1.00000375, 1.00000054, 0.99999047])
Если вы хотите, например, 1000 однородных случайных чисел в диапазоне [1 - 1e-5, 1 + 1e-5):
nums = np.random.uniform(low=1-1e-5, high=1+1e-5, size=1000)
случайным образом согласно какому распределению?