Signatur
Beschreibung
stats_cdf_uniform ist Teil der PECL-Erweiterung stats und arbeitet mit der kontinuierlichen Gleichverteilung (Uniform Distribution). Bei dieser Verteilung sind alle Werte im Intervall [a, b] gleichwahrscheinlich.
Die Funktion erlaubt es, je nach dem Wert von which, entweder den kumulierten Wahrscheinlichkeitswert (CDF), den Quantilswert x, den unteren Grenzwert a oder den oberen Grenzwert b zu berechnen – sofern die drei übrigen Parameter bekannt sind. Damit deckt sie alle vier möglichen Unbekannten der Gleichverteilung ab.
which = 1: Berechne P (CDF-Wert) für gegebene x, a, b.which = 2: Berechne x (Quantil) für gegebene P, a, b.which = 3: Berechne a (untere Grenze) für gegebene P, x, b.which = 4: Berechne b (obere Grenze) für gegebene P, x, a.
Diese Funktion ist nützlich in statistischen Berechnungen, etwa zur Simulation gleichverteilter Zufallsvariablen, zur Bestimmung von Konfidenzintervallen oder beim Testen statistischer Hypothesen mit gleichverteilten Stichproben.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $par1 Pflicht | float | Erster Parameter abhängig von which: bei which=1 der Wert x, bei which=2 die Wahrscheinlichkeit P, bei which=3 die Wahrscheinlichkeit P, bei which=4 die Wahrscheinlichkeit P. |
|
| $par2 Pflicht | float | Zweiter Parameter abhängig von which: bei which=1 die untere Grenze a, bei which=2 die untere Grenze a, bei which=3 der Wert x, bei which=4 der Wert x. |
|
| $par3 Pflicht | float | Dritter Parameter abhängig von which: bei which=1 die obere Grenze b, bei which=2 die obere Grenze b, bei which=3 die obere Grenze b, bei which=4 die untere Grenze a. |
|
| $which Pflicht | int | Ganzzahl von 1 bis 4, die angibt, welcher Parameter berechnet werden soll: 1 = CDF-Wert P, 2 = Quantil x, 3 = untere Grenze a, 4 = obere Grenze b. |
Rückgabewert
which ab. Bei ungültigen Eingaben (z. B. a >= b oder P außerhalb von [0, 1]) kann das Ergebnis undefiniert oder false sein.Beispiele
CDF-Wert für x=0.5 im Intervall [0, 1] berechnen
<?php
// Berechne P(X <= 0.5) für Uniform(0, 1)
// which=1: berechne P; par1=x=0.5, par2=a=0.0, par3=b=1.0
$p = stats_cdf_uniform(0.5, 0.0, 1.0, 1);
echo "P(X <= 0.5) = " . $p . "\n";
// Erwartetes Ergebnis: 0.5 (Mitte des Intervalls).
Quantil (Umkehrfunktion) der Gleichverteilung berechnen
<?php
// Berechne x, sodass P(X <= x) = 0.75 für Uniform(2, 6)
// which=2: berechne x; par1=P=0.75, par2=a=2.0, par3=b=6.0
$x = stats_cdf_uniform(0.75, 2.0, 6.0, 2);
echo "x bei P=0.75: " . $x . "\n";
// Erwartetes Ergebnis: 5.0 (= 2 + 0.75 * (6 - 2))
Obere Grenze der Gleichverteilung ermitteln
<?php
// Berechne b, sodass P(X <= 3) = 0.5 für Uniform(1, b)
// which=4: berechne b; par1=P=0.5, par2=x=3.0, par3=a=1.0
$b = stats_cdf_uniform(0.5, 3.0, 1.0, 4);
echo "Obere Grenze b = " . $b . "\n";
// Erwartetes Ergebnis: 5.0 (= 1 + (3 - 1) / 0.5)
// Wichtig · Fallstricke
Voraussetzung: Die Funktion ist Teil der PECL-Erweiterung stats, die separat installiert werden muss (pecl install stats). Sie ist nicht in der PHP-Standardinstallation enthalten.
Gültigkeitsbereiche: Es muss stets a < b gelten. Die Wahrscheinlichkeit P muss im Bereich [0, 1] liegen. Bei which=2 muss außerdem a <= x <= b sichergestellt sein. Ungültige Parameterkombinationen können zu unerwarteten Ergebnissen führen.
Die Reihenfolge der Parameter (par1, par2, par3) ist je nach which-Wert unterschiedlich belegt – die Dokumentation sollte daher sorgfältig beachtet werden, um Verwechslungen zu vermeiden.