Проблемы при выполнении логнормальной подгонки со Scipy - PullRequest
1 голос
/ 06 марта 2019

Я читал много прошлых вопросов по этой теме, однако мне не удалось найти решение этой проблемы. При использовании python scipy.stats.lognormal.fit для набора данных (Y) выходными параметрами являются shape, loc и scale соответственно. shape предполагается, что оно равно стандартному отклонению нормально распределенной случайной величины X, так что exp (X) = Y, а scale равно exp (mu), где mu равно среднее значение той же нормально распределенной случайной величины X. У меня есть три набора данных, для которых я выполняю подгонку, однако, в частности, один из них доставляет мне неприятности, и я не смог найти причину. Я не могу поделиться кодом, так как пример очень специфичен и имеет размер 270, поэтому я читаю его непосредственно из файла, но проблема в том, что я получаю разные значения стандартного отклонения = scale и mu = ln ( scale), выполнив подгонку двумя различными способами: один подгоняет непосредственно данные Y с помощью lognorm.fit, а другой - подгонку к нормально распределенному образцу X. Я проверил с помощью другого программного обеспечения (Matlab и Excel), и второй вариант дает правильные результаты, так что я предполагаю, что это связано с конвергенцией или конкретной характеристикой lognorm.fit, однако я безуспешно пытался сделать несколько вещей, например, с использованием оптимизатора:

#def opti_wrap(fun, x0, args, disp=0, **kwargs):
#    return minimize(fun, x0, args=args, method='SLSQP', 
#                    tol=1e-12, options={'maxiter': 1000}).x

или игра со значением loc при выполнении lognorm.fit.

Есть идеи, в чем может быть проблема?

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