2016-11-28 3 views
2

В SciPy отрицательного биномиального распределения определяется как:альтернативная параметризация отрицательного биномиального в SciPy

nbinom.pmf(k) = choose(k+n-1, n-1) * p**n * (1-p)**k 

Это общее определение, смотри также Википедия: https://en.wikipedia.org/wiki/Negative_binomial_distribution

Однако, существует другая параметризацию, где отрицательный биномиал определяется средним значением mu и параметром дисперсии.

В R это легко, как negbin может быть определен как параметризации:

dnbinom(x, size, prob, mu, log = FALSE) 

Как я могу использовать среднее/дисперсии параметризацию в SciPy?

редактировать:

прямо из R помощью:

Отрицательное биномиальное распределение с размером = п и PROB = р имеет плотность

Г (х + N)/(Γ (п) x!) p^n (1-p)^x

Альтернативная параметризация (часто используется в экологии) определяется средним mu (см. выше) и размером, параметром дисперсии, где prob = size/(size + му). В этой параметризации дисперсия равна mu + mu^2/size.

Также здесь описывать более подробно:

https://en.wikipedia.org/wiki/Negative_binomial_distribution#Alternative_formulations

+0

Можете ли вы дать нам функцию плотности вероятности или функцию распределения? –

ответ

1
def convert_params(mu, theta): 
    """ 
    Convert mean/dispersion parameterization of a negative binomial to the ones scipy supports 

    See https://en.wikipedia.org/wiki/Negative_binomial_distribution#Alternative_formulations 
    """ 
    var = mu + theta * mu ** 2 
    p = (var - mu)/var 
    return theta, 1 - p 
Смежные вопросы