Seite 1 von 1
Quantile einer Normalverteilung berechnen
Verfasst: Freitag 27. September 2013, 02:18
von Aries
Hallo, wenn ich für x-Werte wie folgt y-Werte berechne ...
y = 2,718...^-(x^2)
... mit welcher Formel berechne ich dann den x-Wert eines beliebigen Quantils dieser Normalverteilung?
Für das 0-Quantil kommt -∞ raus.
Für das 0,5-Quantil kommt 0 raus.
Für das 1-Quantil kommt ∞ raus.
Soviel ist schon mal klar.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Freitag 27. September 2013, 07:58
von Sirius3
Hallo Aries,
Du hast eine Funktion f(x), integrierst sie -> F(x) und bildest die Umkehrfunktion F^-1(y). Dann kannst Du für y 0, 0.5 usw. einsetzen.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Freitag 27. September 2013, 15:45
von Aries
Sirius3 hat geschrieben:Hallo Aries,
Du hast eine Funktion f(x), integrierst sie -> F(x) und bildest die Umkehrfunktion F^-1(y). Dann kannst Du für y 0, 0.5 usw. einsetzen.
Wenn ich die Funktion in einen Integralrechner eingebe, kommt irgendein Unsinn mit Errorfunktion raus:
http://www.integralrechner.de/#expr=2.7 ... x%C2%B2%29
Re: Quantile einer Normalverteilung berechnen
Verfasst: Freitag 27. September 2013, 16:00
von EyDu
Deine Funktion ist nicht einmal eine Normalverteilung. Ich nehme mal an, dass du da einfach irgendwo ein e vergessen hast.
Zum Thema "error function" solltest du dir
das hier durchlesen und dir mal die Funktionen erf und erfc im math-Modul anschauen.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Freitag 27. September 2013, 17:03
von Aries
EyDu hat geschrieben:Deine Funktion ist nicht einmal eine Normalverteilung. Ich nehme mal an, dass du da einfach irgendwo ein e vergessen hast.
e ist 2,718...
Mir fällt allerdings auf, dass e garnicht nötig ist. Es funktioniert genauso gut auch mit irgendeiner anderen Zahl größer 1:
Z. B.:
2^-(x^2)
10^-(x^2)
Da kommt überall die Glockenkurve raus. Kann man hier ausprobieren:
http://www.walterzorn.de/grapher/grapher.htm
Wenn ich jetzt 2^-(x^2) in den Integralrechner eingebe, wird das Ergebnis schon übersichtlicher:
√(π) * erf(√(ln(2)) * x) / (2 * √(ln(2)))
Allerdings habe ich keine Ahnung wie ich davon die Umkehrfunktion bilde und was ich mit dem erf mache.
Vor Jahren habe ich in Pascal mal einen ziemlich aufwendigen Weg gefunden die relativen Quantilpositionen einer Normalverteilung ohne Formel näherungsweise zu berechnen. (Für tausende x-Werte y-Werte berechnen; Anhand der y-Werte die Prozentränge berechnen; Nach dem entsprechenden Rang suchen.) Ich ahne wieder, warum ich das so machen musste.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Freitag 27. September 2013, 17:25
von EyDu
Aries hat geschrieben:e ist 2,718...
Das siehst du mal, ich schaue mir keine Zahlen an wenn ich Konstaten erwarte

Außerdem fehlt noch der Faktor vor dem Exponenten
Aries hat geschrieben:Mir fällt allerdings auf, dass e garnicht nötig ist. Es funktioniert genauso gut auch mit irgendeiner anderen Zahl größer 1:
Dann hast du keine Normalverteilung mehr. Du wirst eh nicht um die erf-Funktion rumkommen, denn Funktionen mit -x^2 im Exponenten sind nie integrierbar.
Aries hat geschrieben:Allerdings habe ich keine Ahnung wie ich davon die Umkehrfunktion bilde und was ich mit dem erf mache.
Ich hab dir doch einen Link zu Wikipedia gegeben und dich auf die erf- und erfc-Funktionen im math-Modul hingewiesen. Du musst einfach nur noch lesen und ein oder zwei Formeln umstellen.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Freitag 27. September 2013, 21:26
von Aries
EyDu hat geschrieben:Dann hast du keine Normalverteilung mehr.
Doch, vielleicht meinst Du die Standardnormalverteilung.
Es sieht so aus als müsste man im Wesentlichen nur die Fehlerfunktion umkehren. Im englischen Wikipedia gibt es einen Artikel über die Probit-Funktion. Anscheinend handelt es sich dabei um genau das, was ich suche.
http://en.wikipedia.org/wiki/Probit
Jetzt müsste ich nur noch wissen, wie man die Probit-Funktion in Python anwendet.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Samstag 28. September 2013, 00:14
von EyDu
Aries hat geschrieben:EyDu hat geschrieben:Dann hast du keine Normalverteilung mehr.
Doch, vielleicht meinst Du die Standardnormalverteilung.
Nein, ich meine die Normalverteilung. Im Exponenten fehlt mindestens noch ein 1/2 und vor dem e als Faktor noch die Normierung. Damit es eine Normalverteilung ist sollte das Integral unter der Kurve schon genau 1 betragen.
Ansonsten hilft dir ``scipy.special.erfinv`` sicher weiter. Keine Ahnung, warum ich erfc in den Raum geworfen habe, das ist hier ja überhaupt nicht brauchbar.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Samstag 28. September 2013, 14:27
von Aries
EyDu hat geschrieben:
Nein, ich meine die Normalverteilung. Im Exponenten fehlt mindestens noch ein 1/2 und vor dem e als Faktor noch die Normierung. Damit es eine Normalverteilung ist sollte das Integral unter der Kurve schon genau 1 betragen.
Ich sehe nicht, dass sich dadurch irgendetwas an der (relativen) Form der Glockenkurve ändert, und soweit ich weiß, ist die Bezeichnung Normalverteilung geknüpft.
Re: Quantile einer Normalverteilung berechnen
Verfasst: Samstag 28. September 2013, 14:51
von BlackJack
Wikipedia sagt: „Wichtig ist, dass die gesamte Fläche unter der Kurve gleich 1, also gleich der Wahrscheinlichkeit des sicheren Ereignisses, ist.” Beziehungsweise die Englische: „Any normal distribution is a version of the standard normal distribution whose domain has been stretched by a factor σ (the standard deviation) and then translated by μ (the mean value). The probability density must be scaled by 1/σ so that the integral is still 1.”