Распределение вероятностей типа х ^ 2 - PullRequest
0 голосов
/ 20 ноября 2018

Я искал некоторое время и не мог найти распределение вероятностей, которое соответствует моим потребностям.Распределение должно выглядеть примерно как функция c1 * x^2 + c2.Самым близким, что я мог найти в numpy, является бета-распределение с альфа = 0,5 и бета = 0,5.Но я не люблю равнину посредине.У кого-нибудь есть идеи?

1 Ответ

0 голосов
/ 20 ноября 2018

Вы можете создавать свои собственные дистрибутивы, используя scipy.stats.rv_continous

Пример использования:

from scipy.stats import rv_continuous

def my_pdf_function(x, c1, c2):
    return (x**2 * c1 + c2)

class cuadratic_distribution(rv_continuous):
    def _pdf(self, x):
        # For example: c1=1, c2=2/3 (normalized between x=0 and x=1)
        return my_pdf_function(x, c1=1, c2=2/3)

my_pdf = cuadratic_distribution(a=0, b=1, name='my_pdf')

my_pdf.cdf([-1, 0.4, 2])
>>> array([0.   , 0.316, 1.   ])

Обратите внимание, что вы должны установить соответствующиеграницы распределения (a и b), а также соответствующие значения c1 и c2 для обеспечения 0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...