Start · Sprachen · PHP · Referenz · stats_dens_f

stats_dens_f

Funktion

Berechnet den Wert der Wahrscheinlichkeitsdichtefunktion (PDF) der F-Verteilung an der Stelle <code>x</code>.

Kategorie: math

Signatur

stats_dens_f(float $x, float $dfr1, float $dfr2): float

Beschreibung

stats_dens_f() gehört zur PECL-Erweiterung stats und berechnet die Wahrscheinlichkeitsdichte der F-Verteilung (auch Fischer-Verteilung oder Snedecor-F-Verteilung) an einem gegebenen Punkt x. Die Funktion ist typischerweise in der Varianzanalyse (ANOVA) und beim F-Test relevant, um zu prüfen, ob zwei Stichproben dieselbe Varianz besitzen.

Die F-Verteilung wird durch zwei Freiheitsgrade parametrisiert: den Zähler-Freiheitsgrad dfr1 (degrees of freedom numerator) und den Nenner-Freiheitsgrad dfr2 (degrees of freedom denominator). Beide müssen positiv sein. Der Eingabewert x muss ebenfalls nicht-negativ sein, da die F-Verteilung nur für x >= 0 definiert ist.

Der Rückgabewert ist der Dichtewert an der Stelle x, also f(x). Dieser Wert ist selbst keine Wahrscheinlichkeit, sondern gibt die relative Häufigkeit an, mit der Werte in einem infinitesimalen Intervall um x auftreten. Um Wahrscheinlichkeiten über Intervalle zu erhalten, kann stats_cdf_f() verwendet werden.

Die Funktion steht nur zur Verfügung, wenn die PECL-Erweiterung stats installiert und aktiviert ist. Sie eignet sich für statistische Berechnungen, Hypothesentests und die grafische Darstellung von F-Verteilungskurven in PHP-Anwendungen.

Parameter

Name Typ Default Beschreibung
$x Pflicht float Der Wert, an dem die Dichtefunktion ausgewertet wird. Muss >= 0 sein, da die F-Verteilung nur für nicht-negative Werte definiert ist.
$dfr1 Pflicht float Der Zähler-Freiheitsgrad (degrees of freedom numerator) der F-Verteilung. Muss ein positiver Wert sein.
$dfr2 Pflicht float Der Nenner-Freiheitsgrad (degrees of freedom denominator) der F-Verteilung. Muss ein positiver Wert sein.

Rückgabewert

Typ
float
Beschreibung
Gibt den Wert der Wahrscheinlichkeitsdichtefunktion der F-Verteilung an der Stelle x zurück. Bei ungültigen Eingaben (z. B. negativer Freiheitsgrad) ist das Verhalten undefiniert oder liefert 0.0.

Beispiele

Dichtewert der F-Verteilung an einem bestimmten Punkt berechnen

<?php
// Voraussetzung: PECL-Erweiterung 'stats' muss installiert sein
// F-Verteilung mit 5 und 10 Freiheitsgraden
$x    = 2.0;
$dfr1 = 5.0;  // Zähler-Freiheitsgrad
$dfr2 = 10.0; // Nenner-Freiheitsgrad

$density = stats_dens_f($x, $dfr1, $dfr2);
echo "f(" . $x . ") = " . $density . "\n";
// Beispielausgabe: f(2.0) = 0.10608....
f(2.0) = 0.10608...

Dichtefunktion über einen Wertebereich berechnen und ausgeben

<?php
// Voraussetzung: PECL-Erweiterung 'stats' muss installiert sein
$dfr1 = 3.0;
$dfr2 = 15.0;

echo "x     | f(x)\n";
echo "------+----------\n";
for ($i = 0; $i <= 5; $i += 1) {
    $x = (float) $i;
    $density = stats_dens_f($x, $dfr1, $dfr2);
    printf("%-5.1f | %.6f\n", $x, $density);
}
x | f(x) ------+---------- 0.0 | 0.000000 1.0 | 0.378357 2.0 | 0.162733 3.0 | 0.069116 4.0 | 0.029999 5.0 | 0.013281

// Wichtig · Fallstricke

PECL-Abhängigkeit: stats_dens_f() ist nicht Teil der PHP-Standardbibliothek. Die Funktion erfordert die Installation der PECL-Erweiterung stats (pecl install stats). Ohne diese Erweiterung führt der Aufruf zu einem fatalen Fehler.

Gültigkeitsbereich: Übergeben Sie nur x >= 0 sowie strikt positive Freiheitsgrade. Negative oder null-wertige Freiheitsgrade können zu nicht definierten Ergebnissen oder Laufzeitfehlern führen.

Verwechslungsgefahr: Die Dichtefunktion stats_dens_f() liefert keine kumulierte Wahrscheinlichkeit. Für kumulative Wahrscheinlichkeiten (CDF) verwenden Sie stats_cdf_f().