Текст подпрограммы и версий
bk02r_c.zip , bk02d_c.zip
Тексты тестовых примеров
tbk02r_c.zip , tbk02d_c.zip

Подпрограмма:  bk02r_c

Назначение

Проверка совпадения средних значений двух генеральных совокупностей, имеющих разную дисперсию.

Математическое описание

Подпрограмма вычисляет по выборкам X1 и X2 значение статистики Стьюдента и по нему оцениваeт ypoвень значимости критерия ALFA. Чем меньше уровень значимости ALFA, тем больше оснований утверждать, что выборки X1 и X2 сделаны из генеральных совокупностей, имеющих разные средние значения.

Использование

    int bk02r_c (real *x1, integer *n1, real *x2,
            integer *n2, real *alfa)

Параметры

x1 - вещественный вектор длины n1, содержащий выборку из первой генеральной совокупности;
n1 - длина вектора X1 (тип: целый);
x2 - вещественный вектор длины n2, содержащий выборку из второй генеральной совокупности;
n2 - длина вектора X2 (тип: целый);
alfa - вещественная переменная, содержащая вычисленный уровень значимости.

Версии

bk02d_c - проверка совпадения средних значений двух имеющих разную дисперсию генеральных совокупностей по выборкам, заданным с удвоенной точностью. Параметры x1, x2, alfa должны иметь тип double.

Вызываемые подпрограммы

sf36r_c - вычисление бета - функции распределения вероятностей; используется в подпрограмме bk02r_c.
sf36d_c - вычисление бета - функции распределения вероятностей с удвоенной точностью; используется в подпрограмме bk02d_c.

Замечания по использованию: нет

Пример использования

int main(void)
{
    /* Initialized data */
    static float x1[3] = { 1.f,2.f,3.f };
    static float x2[4] = { 4.f,5.f,6.f,7.f };

    /* Local variables */
    static float alfa;
    extern int bk02r_c(float *, int *, float *, int *, float *);
    static int n1, n2;

    n1 = 3;
    n2 = 4;
    bk02r_c(x1, &n1, x2, &n2, &alfa);

    printf("\n tbk02r:  alfa= %16.7e \n", alfa);
    return ;
} /* main */


Результат:    alfa  =  0.01007694