NORMSINV (in einem Kommentar erwähnt) ist das Gegenteil der CDF der Standardnormalverteilung. Mit scipy
können Sie dies mit der ppf
Methode des scipy.stats.norm
Objekts berechnen. Das Akronym ppf
steht für percent point function, was ein anderer Name für die quantile function ist.
In [20]: from scipy.stats import norm
In [21]: norm.ppf(0.95)
Out[21]: 1.6448536269514722
Überprüfen Sie, ob es die Umkehrung der CDF ist:
In [34]: norm.cdf(norm.ppf(0.95))
Out[34]: 0.94999999999999996
verwendet standardmäßig norm.ppf
Mittelwert = 0 und stddev = 1, was der "Standard" Normalverteilung ist. Sie können einen anderen Mittelwert und eine andere Standardabweichung verwenden, indem Sie die Argumente loc
bzw. scale
angeben.
In [35]: norm.ppf(0.95, loc=10, scale=2)
Out[35]: 13.289707253902945
Wenn Sie scipy.stats.norm
auf den Quellcode anschauen, werden Sie feststellen, dass die ppf
Methode scipy.special.ndtri
schließlich nennt. So berechnen die Umkehrung der CDF der Standardnormalverteilung, können Sie diese Funktion direkt verwenden:
In [43]: from scipy.special import ndtri
In [44]: ndtri(0.95)
Out[44]: 1.6448536269514722
Haben Sie die inverse Gaußsche Verteilung bedeuten (http://en.wikipedia.org/wiki/ Inverse_Gaussian_distribution) oder die Umkehrung der kumulativen Verteilungsfunktion der Normalverteilung (http://en.wikipedia.org/wiki/Normal_distribution), oder etwas anderes? –
@WarrenWeckesser der zweite: Inverse der kumulativen Verteilungsfunktion der Normalverteilung – Yueyoum
@WarrenWeckesser ich meine die Python-Version der "Normsinv" -Funktion in Excel. – Yueyoum