Другое название – T-распределение
Обозначение | |
Область значений | |
Параметры | Параметр формы , число степеней свободы, целое положительное число |
Плотность (функция вероятности) | |
Математическое ожидание | 0 |
Дисперсия | , |
Функция распределения | Не выражается в элементарных функциях |
Случайная величина , имеющая распределение Стьюдента с степенями свободы, следующими соотношениями связана с независимыми случайными величинами , и имеющими соответственно F-распределение с степенями свободы 1 и , распределение хи-квадрат с степенями свободы и нормальное с параметрами 0 и 1:
При распределение Стьюдента достаточно для практических целей близко к нормальному распределению.
Пусть даны n независимых случайных величин, распределенных нормально с параметрами и. Определим случайные величины и обычным образом. Тогда случайная величина подчиняется T-распределению с n степенями свободы. На этом свойстве основан одновыборочный T-критерий.
Пусть даны два набора из n1 и n2 случайных величин, распределенных нормально с параметрами , и , соответственно. Определим случайные величины , и , обычным образом. Тогда случайная величина
подчиняется T-распределению с n1+n2-2 степенями свободы. На этом свойстве основан двухвыборочный T-критерий.
Выше указано соотношение, связывающее распределение Стьюдента с F-распределением, которое, в свою очередь, является частным случаем бета. Это и дает нам способ вычисления функции распределения Стьюдента.
/****************************************************/ /* Распределение Стьюдента */ /****************************************************/ #ifndef __STUDENT_H__ #define ENTRY extern #define LOCAL static ENTRY double studentDF(double n, double x); //Вычисляется вероятность того, что случайная величина, // подчиняющаяся распределению Стьюдента (T-распределению) // c n степенями свободы, не превосходит (меньше или равна) x. ENTRY double inv_studentDF(double n, double p); // По данной вероятности p вычисляется значение q, // для которого studentDF(n,q) вернет p. #define __STUDENT_H__ /* Prevents redefinition */ #endif /* Ends #ifndef __STUDENT_H__ */ |
/****************************************************/ /* Распределение Стьюдента */ /****************************************************/ #include <assert.h> #include <math.h> #include "betaDF.h" ENTRY double studentDF(double n, double x) /* * Вычисляется вероятность того, что случайная величина, * подчиняющаяся распределению Стьюдента (T-распределению) * c n степенями свободы, не превосходит (меньше или равна) x. */ { assert(n > 0); if (x == 0.0) return 0.5; BetaDF b=BetaDF(0.5 * n, 0.5); double z = 0.5 * b.value(n / (n + x * x)); return (x > 0.0) ? 1.0 - z : z; }/*studentDF*/ ENTRY double inv_studentDF(double n, double p) /* * По данной вероятности p вычисляется значение q, * для которого studentDF(n,q) вернет p. */ { if (p == 0.5) return 0.0; double z = 1.0 - 2.0 * p; BetaDF b=BetaDF(0.5, 0.5*n); z = b.quantile(fabs(z)); double q = sqrt(n*z/(1.0-z)); return (p < 0.5) ? -q : q; } |
Дата последней модификации: 25 октября 2000 г.