Я хочу создать нормальный распределенный массив с numpy.random.normal, который состоит только из положительных значений. Например, следующее показывает, что оно иногда возвращает отрицательные значения, а иногда и положительные. Как я могу изменить его, чтобы он возвращал только положительные значения?Python numpy.random.normal только положительные значения
>>> import numpy
>>> numpy.random.normal(10,8,3)
array([ -4.98781629, 20.12995344, 4.7284051 ])
>>> numpy.random.normal(10,8,3)
array([ 17.71918829, 15.97617052, 1.2328115 ])
>>>
Я предполагаю, что я мог бы решить эту проблему как-то так:
myList = numpy.random.normal(10,8,3)
while item in myList <0:
# run again until all items are positive values
myList = numpy.random.normal(10,8,3)
Что вы имеете в виду под "только вернуть положительные значения? Что вы хотите сделать, если оно вернет отрицательное значение? – Patashu
Ну, я хотел бы изменить код, чтобы он только возвращал положительные значения. – ustroetz
По определению нормальное распределение распространяется на все возможные значения, положительные и отрицательные. Вы не можете примирить «нормальное распределение» с «только положительными значениями», поэтому мой вопрос к вам ... что вы действительно хотите? – Patashu