Если я подгоняю 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
Мобильная версия