Signatur
Beschreibung
Die Funktion stats_cdf_noncentral_chisquare() gehört zur PECL-Erweiterung stats und arbeitet mit der nichtzentralen Chi-Quadrat-Verteilung (engl. noncentral chi-square distribution). Diese Verteilung verallgemeinert die klassische Chi-Quadrat-Verteilung und wird häufig in der Statistik eingesetzt, um die Teststärke (Power) von Hypothesentests zu berechnen, etwa bei ANOVA oder Varianzanalysen.
Je nach Wert des Parameters which berechnet die Funktion einen der vier Parameter aus den drei übrigen: die kumulative Wahrscheinlichkeit (CDF), den Quantilwert (die Zufallsvariable x), die Freiheitsgrade oder den Nichtzentralitätsparameter (Noncentrality Parameter, NCP). So lassen sich z. B. kritische Werte oder Wahrscheinlichkeiten direkt ermitteln.
Die Parameter par1, par2 und par3 stehen je nach which-Wert für unterschiedliche Größen der Verteilung. Der unbekannte Parameter wird durch den entsprechenden Wert in der Eingabe ignoriert und numerisch ermittelt.
- which = 1: Berechnet die kumulative Wahrscheinlichkeit p (CDF) für einen gegebenen x-Wert, Freiheitsgrade und NCP.
- which = 2: Berechnet den Quantilwert x aus Wahrscheinlichkeit, Freiheitsgraden und NCP.
- which = 3: Berechnet die Freiheitsgrade aus Wahrscheinlichkeit, x und NCP.
- which = 4: Berechnet den Nichtzentralitätsparameter aus Wahrscheinlichkeit, x und Freiheitsgraden.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $par1 Pflicht | float | Erster Parameter der Verteilung. Je nach which: kumulative Wahrscheinlichkeit p (0–1), Quantilwert x (>= 0), Freiheitsgrade (> 0) oder Nichtzentralitätsparameter (>= 0). |
|
| $par2 Pflicht | float | Zweiter Parameter der Verteilung. Je nach which: Quantilwert x, Freiheitsgrade oder Nichtzentralitätsparameter. |
|
| $par3 Pflicht | float | Dritter Parameter der Verteilung. Je nach which: Freiheitsgrade oder Nichtzentralitätsparameter. |
|
| $which Pflicht | int | Gibt an, welcher Parameter berechnet werden soll. Gültige Werte: 1 (CDF/Wahrscheinlichkeit), 2 (Quantilwert x), 3 (Freiheitsgrade), 4 (Nichtzentralitätsparameter). |
Rückgabewert
which = 1 ist dies eine Wahrscheinlichkeit zwischen 0 und 1, bei den anderen Werten die entsprechende statistische Kenngröße.Beispiele
Kumulative Wahrscheinlichkeit berechnen (which = 1)
<?php
// Berechnet die kumulative Wahrscheinlichkeit P(X <= 10)
// bei 5 Freiheitsgraden und Nichtzentralitätsparameter 3.0
$x = 10.0;
$df = 5.0;
$ncp = 3.0;
$probability = stats_cdf_noncentral_chisquare($x, $df, $ncp, 1);
echo 'P(X <= 10) = ' . $probability;
?>
Kritischen Wert (Quantil) berechnen (which = 2)
<?php
// Berechnet den x-Wert, bei dem die kumulative Wahrscheinlichkeit 0.95 beträgt
// bei 5 Freiheitsgraden und Nichtzentralitätsparameter 3.0
$p = 0.95;
$df = 5.0;
$ncp = 3.0;
$x = stats_cdf_noncentral_chisquare($p, $df, $ncp, 2);
echo 'Kritischer Wert x bei p=0.95: ' . $x;
?>
Nichtzentralitätsparameter ermitteln (which = 4)
<?php
// Gesucht: Nichtzentralitätsparameter, wenn p=0.80, x=12, df=5
$p = 0.80;
$x = 12.0;
$df = 5.0;
$ncp = stats_cdf_noncentral_chisquare($p, $x, $df, 4);
echo 'Nichtzentralitätsparameter NCP: ' . $ncp;
?>
// Wichtig · Fallstricke
PECL-Erweiterung erforderlich: Diese Funktion ist Teil der PECL-Erweiterung stats, die nicht standardmäßig in PHP enthalten ist. Sie muss separat installiert und in der php.ini aktiviert werden (extension=stats).
Parameterreihenfolge: Die Bedeutung von par1, par2 und par3 hängt direkt vom Wert which ab. Eine falsche Zuordnung führt zu falschen Ergebnissen ohne Fehlermeldung – daher die Dokumentation stets genau beachten.
Gültigkeitsbereiche: Freiheitsgrade müssen größer als 0 sein, der Nichtzentralitätsparameter muss >= 0 sein und Wahrscheinlichkeitswerte müssen im Bereich [0, 1] liegen. Ungültige Eingaben können zu NAN oder undefinierten Ergebnissen führen.