Signatur
Beschreibung
stats_rand_gen_t ist Teil der PECL-Erweiterung stats und gibt eine einzelne Zufallszahl zurück, die gemäß der Student-t-Verteilung (auch t-Verteilung genannt) verteilt ist. Der einzige Parameter ist die Anzahl der Freiheitsgrade (degrees of freedom), welche die Form der Verteilung bestimmt.
Die t-Verteilung wird in der Statistik häufig für Hypothesentests eingesetzt, insbesondere wenn die Stichprobengröße klein und die Standardabweichung der Grundgesamtheit unbekannt ist. Je größer die Freiheitsgrade, desto mehr nähert sich die t-Verteilung der Standardnormalverteilung an.
Diese Funktion eignet sich für Monte-Carlo-Simulationen, statistische Bootstrapping-Verfahren oder die Simulation von Stichprobenverteilungen in wissenschaftlichen und mathematischen Anwendungen. Sie erfordert die installierte und aktivierte PECL-Erweiterung stats.
Beachte, dass die Freiheitsgrade df einen positiven Wert größer als null annehmen müssen, da die t-Verteilung sonst nicht definiert ist.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $df Pflicht | float | Anzahl der Freiheitsgrade (degrees of freedom) der t-Verteilung. Muss ein positiver Wert größer als 0 sein. |
Rückgabewert
df verteilt ist.Beispiele
Einzelne t-verteilte Zufallszahl erzeugen
<?php
// Erzeugt eine einzelne Zufallszahl aus der t-Verteilung mit 10 Freiheitsgraden
$zufallszahl = stats_rand_gen_t(10);
echo "t-verteilte Zufallszahl (df=10): " . $zufallszahl . PHP_EOL;
?>
Monte-Carlo-Simulation mit t-Verteilung
<?php
// Simulation von 1000 t-verteilten Zufallszahlen und Berechnung des Mittelwerts
$df = 5;
$stichproben = 1000;
$summe = 0.0;
for ($i = 0; $i < $stichproben; $i++) {
$summe += stats_rand_gen_t($df);
}
$mittelwert = $summe / $stichproben;
echo "Mittelwert von {$stichproben} t-verteilten Zufallszahlen (df={$df}): " . round($mittelwert, 4) . PHP_EOL;
// Bei ausreichend großer Stichprobe sollte der Mittelwert nahe 0 liegen
?>
// Wichtig · Fallstricke
Erweiterung erforderlich: Diese Funktion ist nicht im PHP-Kern enthalten, sondern Teil der PECL-Erweiterung stats. Sie muss separat installiert und in der php.ini aktiviert werden (extension=stats.so bzw. extension=stats.dll).
Freiheitsgrade: Der Parameter df muss strikt positiv sein (df > 0). Bei ungültigen Werten (z. B. df <= 0) ist das Verhalten undefiniert und kann zu fehlerhaften Ergebnissen oder Warnungen führen.
Reproduzierbarkeit: Für reproduzierbare Ergebnisse in Tests oder Simulationen kann der Zufallsgenerator-Seed mit stats_rand_setall gesetzt werden.