Ответ 1
равномерное распределение, вероятно, будет делать то, что вы просите.
np.random.uniform(5,10) # A single value
np.random.uniform(5,10,[2,3]) # A 2x3 array
Как я могу выбрать случайные поплавки на интервале [a, b] в numpy? Не только целые числа, но и любые действительные числа. Например,
random_float(5, 10)
вернет случайные числа между [5, 10]
. спасибо.
равномерное распределение, вероятно, будет делать то, что вы просите.
np.random.uniform(5,10) # A single value
np.random.uniform(5,10,[2,3]) # A 2x3 array
import numpy as np
>>> 5 + np.random.sample(10) * 5
array([ 7.14292096, 6.84837089, 6.38203972, 8.80365208, 9.06627847,
5.69871186, 6.37734538, 9.60618347, 9.34319843, 8.63550653])
без numpy вы можете сделать это со случайным модулем.
import random
random.random()*5 + 10
будет возвращать числа в диапазоне 10-15, как функцию:
>>> import random
>>> def random_float(low, high):
... return random.random()*(high-low) + low
...
>>> random_float(5,10)
9.3199502283292208
>>> random_float(5,10)
7.8762002129171185
>>> random_float(5,10)
8.0522023132650808
random.random()
возвращает float от 0 до 1 (исключение верхней границы). умножая его на число, дает ему больший диапазон. ex random.random()*5
возвращает числа от 0 до 5. Добавление числа к этому обеспечивает нижнюю границу. random.random()*5 +10
возвращает числа от 10 до 15. Я не уверен, почему вы хотите, чтобы это было сделано с использованием numpy, но, возможно, я неправильно понял ваши намерения.