Найти тему
Властелин машин

Выборка значений по заданному дискретному распределению

Рассмотрим, какие в Python имеются инструменты создания выборки по заданному дискретному распределению. Она окажется вам полезной, например, для заполнения пропусков в некоторой колонке, не нарушая исходного распределения. Зададим имитационный набор данных x:

Вероятности появления 4 заданных значений от 0 до 3 следующие:

-2

Для нашей цели можно использовать функцию choice из модуля np.random, которая при получении списка значений (параметр a) и их вероятностей (p) возвращает набор величин размером (size) с учетом распределения:

-3

Как видим, вероятности значений из нового набора близки исходным.

Еще более общим инструментом является создание объекта дискретного распределения функцией rv_discrete из модуля scipy.stats:

-4

Воспользовавшись его методом rvs, можно получить набор значений из этого распределения:

-5

Как видим, вероятности получившегося набора тоже близки к исходным.

-6

Наука
7 млн интересуются