Генерация случайных чисел с заданным (числовым) распределением

У меня есть файл с некоторыми вероятностями для разных значений, например:

1 0.1
2 0.05
3 0.05
4 0.2
5 0.4
6 0.2

Я хотел бы сгенерировать случайные числа, используя это распределение. Существует ли существующий модуль, который этим занимается? Довольно просто написать код самостоятельно (построить кумулятивную функцию плотности, сгенерировать случайное значение [0,1] и выбрать соответствующее значение), но похоже, что это должна быть общая проблема, и, возможно, кто-то создал функцию / модуль для это.

Мне это нужно, потому что я хочу сгенерировать список дней рождения (который не соответствует никакому распределению в стандартном модуле random ).

108
задан pafcu 24 November 2010 в 10:56
поделиться