Как связать альфа- и бета-аргументы бета-распределения между numpy.random.beta(alpha, beta) и scipy.stats.beta(alpha, bePython

Программы на Python
Ответить
Anonymous
 Как связать альфа- и бета-аргументы бета-распределения между numpy.random.beta(alpha, beta) и scipy.stats.beta(alpha, be

Сообщение Anonymous »

Я использую numpy-распределения для генерации случайных чисел для моделирования Монте-Карло и библиотеку Fitter для подгонки распределений к результатам. Проблема в том, что подобранные параметры возвращаются в библиотеку scipy соответственно как 4 параметра (a, b, loc, масштаб), и мне нужно найти эквивалентные параметры для numpy (a,b).
Если я подгоняю scipy.stats.beta(a,b,loc=0, Scale=1)(синяя линия), это равно numpy.random.beta(a,b)(bars)
Изображение

Я попытался подогнать их с помощью scify.stats.beta.fit(x, floc=0, fscale=1) и получил следующую ошибку:
scipy.stats._continous_distns.FitDataError: Недопустимые значения в данных. Оценка максимального правдоподобия с помощью «беты» требует, чтобы 0 < (x - loc)/scale < 1 для каждого x в данных.
Если я не устанавливаю floc равным 0 и fscale равным 1, он возвращает такие результаты, как:
[147.1,147.06,-23.56,137.13], которые представляют собой a,b, loc, масштаб.
Как я могу преобразовать их в a,b,loc=0, масштаб=1?
Моя проблема в том, что я создаю программное обеспечение, в котором пользователи создают входные переменные в соответствии с распределениями вероятностей, выполняют моделирование Монте-Карло и получают результаты выходных переменных. Я выполняю подгонку к распределениям для этих переменных, и мне нужно вернуть параметры подгонки пользователю в том же формате, в котором они были первоначально введены. Если пользователь использует альфа- и бета-параметры для создания переменных после бета-дистрибутивов, я не могу вернуть им 4 параметра для имитации бета-дистрибутива.
Мне удалось сделать это с другими нужными мне дистрибутивами, но я использую бета-версию

Подробнее здесь: https://stackoverflow.com/questions/726 ... e-numpy-ra
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»