2014-07-11 4 views
10

Potrzebuję kwarcu niektórych dystrybucji w Pythonie. W r można obliczać te wartości za pomocą funkcji qf, qnorm i qchi2.Python odpowiednik qnorm, qf i qchi2 z R

Czy istnieje jakiś odpowiednik python tych funkcji R? Szukałem scipy, ale nie znalazłem nic.

Odpowiedz

14

Możesz znaleźć rozkłady prawdopodobieństwa w scipy.stats. Każda dystrybucja definiuje zestaw funkcji, na przykład, jeśli przejdziesz do norm dystrybucji i przewinąć stronę w dół można znaleźć sposoby, które obejmują

ppf(q, loc=0, scale=1) # Percent point function (inverse of cdf — percentiles) 

to co scipy wzywa Procent punktową funkcję i robi to, co Rq funkcje działają.

Na przykład:

>>> from scipy.stats import norm 
>>> norm.ppf(.5) # half of the mass is before zero 
0.0 

samego interfejsu do innych dystrybucji, np chi^2:

>>> from scipy.stats import chi2 
>>> chi2.ppf(.8, df=2) # two degress of freedom 
3.2188758248682015 
+0

tak procent punktów functi na obliczeniu kwantyla rozkładu? – Donbeo

+0

Dzięki za wskazanie dziwnie nazwanej funkcji punktu procentowego w scipy. Będąc nieznanym scipy, spędziłem WAY zbyt wiele czasu, próbując google dookoła, właśnie chciałem zapytać, jak zrobić "qnorm" R w Pythonie, kiedy wylądowałem na tej stronie. –

+0

Należy również zauważyć, że jest to odpowiednik funkcji 'NORMINV()' programu Excel, aby pomóc przyszłym użytkownikom (pracownikom Google). –

12

równoważna funkcji R pnorm() jest: scipy.stats.norm.cdf() z pytona równoważnej funkcji R qnorm() jest: scipy.stats.norm.ppf() z pytonem