2014-02-02 3 views
0

Я использовал scipy.stats.wald.fit, чтобы соответствовать моим массивам данных, и без каких-либо предупреждений или ошибок у меня есть два параметра (-1.004123, 0.11517). Я построил график распределения и график гистограммы и нашел, что они хорошо совпадают.математическое выражение для scipy.stats.wald.pdf?

Однако в моих данных есть отрицательные значения, а распределение wald должно работать только для положительных значений, http://en.wikipedia.org/wiki/Inverse_Gaussian_distribution. Как это работает scipy.stats.wald.fit? Может ли кто-нибудь дать мне математическое выражение scipy.stats.wald.pdf?

Я действительно хотел бы написать функцию wald pdf в Cuda-C, поэтому требуется математическое выражение.

ответ

1

Это расположение и масштаб параметры, вот tutorial.

Используйте stats.wald.pdf(x, loc=-1.004123, scale=0.11517) или просто подключите (x - loc)/scale к формуле, которую @Hugh Bothwell нашел для вас.

>>> data = stats.wald.rvs(-1.004123, 0.11517, size=1000) 
>>> res = stats.wald.fit(data) # cheating, I know 
>>> x = np.linspace(min(data), max(data), 100) 
>>> ax.plot(x, stats.wald.pdf(x, *res), 'r-') 
>>> ax.plot(x, stats.wald.pdf(x, loc=res[0], scale=res[1]), 'b--') 
>>> ax.hist(data, normed=True, histtype='stepfilled', alpha=0.3) 
>>> plt.show() 
+0

plug '(x-loc)/scale' в формулу. Это то, что мне нужно! И, похоже, так оно работает для всех функций 'pdf' в' scipy.stats' с параметрами 'loc' и' scale'. – GeauxEric

1

Если у вас есть сомнения, посмотрите на the source!

линия 5900..5906 говорит

The probability density function for `wald` is:: 

    wald.pdf(x, a) = 1/sqrt(2*pi*x**3) * exp(-(x-1)**2/(2*x)) 

for ``x > 0``. 

`wald` is a special case of `invgauss` with ``mu == 1``. 
+0

Я заметил это. Тем не менее, мой вопрос заключается в том, как подключить два параметра, заданных с помощью подгонки. И еще одно: мои данные содержат отрицательное значение, что не имеет смысла в этом выражении. – GeauxEric

+0

(+1) за рекомендацию. К сожалению, есть опечатка в docstring 'wald': это должно быть' wald.pdf (x) '--- cf строка 5913 :-). –

Смежные вопросы