Генерация дискретных случайных величин с указанными весами с использованием SciPy или NumPy

Я ищу простую функцию, которая может генерировать массив указанных случайных значений на основе их соответствующих (также указанных )вероятностей. Мне это нужно только для генерации значений с плавающей запятой, но я не понимаю, почему он не может генерировать какие-либо скаляры. Я могу придумать много способов построить это из существующих функций, но я думаю, что, вероятно, просто пропустил очевидную функцию SciPy или NumPy.

Например.:

>>> values = [1.1, 2.2, 3.3]
>>> probabilities = [0.2, 0.5, 0.3]
>>> print some_function(values, probabilities, size=10)
(2.2, 1.1, 3.3, 3.3, 2.2, 2.2, 1.1, 2.2, 3.3, 2.2)

Примечание :Я нашелscipy.stats.rv _дискретныйно я не понимаю, как это работает. В частности, я не понимаю, что это (ниже )означает и что оно должно делать:

numargs = generic.numargs
[  ] = ['Replace with resonable value', ]*numargs

Если мне следует использовать дискретный rv _, не могли бы вы предоставить мне простой пример и объяснение приведенного выше выражения «форма»?

43
задан TimY 17 February 2014 в 10:26
поделиться