![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Chi-Square Test for the Standard DeviationBoost , Math Toolkit 2.5.0 , Chi Squared Distribution Examples
|
гипотеза |
Тест |
---|---|
Нулевая гипотеза: нет разницы в стандартном отклонении от указанного значения |
Отклонить, если T< & #967;2(1-альфа/2; N-1)или T >& #967;2(альфа/2; N-1) |
Альтернативная гипотеза: существует разница в стандартном отклонении от указанного значения |
Отклонить, если χ2(1-альфа/2; N-1)>= T >= χ2(альфа/2; N-1) |
Альтернативная гипотеза: стандартное отклонение меньше указанного значения |
Отклонить, если χ2(1-альфа; N-1)<= T |
Альтернативная гипотеза: стандартное отклонение больше указанного значения |
Отклонить, если χ2(альфа; N-1)>= T |
Где χ2(альфа; N-1)— верхнее критическое значение распределения Чи Квадрата, и χ2(1-альфа; N-1)— нижнее критическое значение.
Напомним, что нижняя критическая величина такая же, как и квантиль, а верхняя критическая величина такая же, как квантиль от дополнения вероятности, что дает нам следующий код для вычисления критических значений:
double ucv = quantile(complement(dist, alpha)); double ucv2 = quantile(complement(dist, alpha / 2)); double lcv = quantile(dist, alpha); double lcv2 = quantile(dist, alpha / 2); cout << setw(55) << left << "Upper Critical Value at alpha: " << "= " << setprecision(3) << scientific << ucv << "\n"; cout << setw(55) << left << "Upper Critical Value at alpha/2: " << "= " << setprecision(3) << scientific << ucv2 << "\n"; cout << setw(55) << left << "Lower Critical Value at alpha: " << "= " << setprecision(3) << scientific << lcv << "\n"; cout << setw(55) << left << "Lower Critical Value at alpha/2: " << "= " << setprecision(3) << scientific << lcv2 << "\n\n";
Теперь, когда у нас есть критические значения, мы можем сравнить их с нашей тестовой статистикой и распечатать результат каждой гипотезы и теста:
cout << setw(55) << left << "Results for Alternative Hypothesis and alpha" << "= " << setprecision(4) << fixed << alpha << "\n\n"; cout << "Alternative Hypothesis Conclusion\n"; cout << "Standard Deviation != " << setprecision(3) << fixed << D << " "; if((ucv2 < t_stat) || (lcv2 > t_stat)) cout << "ACCEPTED\n"; else cout << "REJECTED\n"; cout << "Standard Deviation < " << setprecision(3) << fixed << D << " "; if(lcv > t_stat) cout << "ACCEPTED\n"; else cout << "REJECTED\n"; cout << "Standard Deviation > " << setprecision(3) << fixed << D << " "; if(ucv < t_stat) cout << "ACCEPTED\n"; else cout << "REJECTED\n"; cout << endl << endl;
Чтобы увидеть некоторые примеры вывода, мы будем использоватьпередачи данныхизNIST / SEMATECH e-Handbook of Statistical Methods.. Данные представляют собой измерения диаметра передач от производственного процесса. Вывод программы специально разработан для отражения вывода DATAPLOT, показанного вПримере справочника NIST.
______________________________________________ Chi Squared test for sample standard deviation ______________________________________________ Number of Observations = 100 Sample Standard Deviation = 0.00628 Expected True Standard Deviation = 0.10000 Test Statistic = 0.39030 CDF of test statistic: = 1.438e-099 Upper Critical Value at alpha: = 1.232e+002 Upper Critical Value at alpha/2: = 1.284e+002 Lower Critical Value at alpha: = 7.705e+001 Lower Critical Value at alpha/2: = 7.336e+001 Results for Alternative Hypothesis and alpha = 0.0500 Alternative Hypothesis Conclusion Standard Deviation != 0.100 ACCEPTED Standard Deviation < 0.100 ACCEPTED Standard Deviation > 0.100 REJECTED
В этом случае мы проверяем, является ли стандартное отклонение образца 0,1, и нулевая гипотеза отвергается, поэтому мы заключаем, что стандартное отклонениене0,1.
В качестве альтернативного примера рассмотрим данныекремниевых пластинизNIST/SEMATECH e-Handbook of Statistical Methods.. В этом сценарии поставщик кремниевых пластин 100 ohm.cm утверждает, что его процесс изготовления может производить пластины с достаточной консистенцией, чтобы стандартное отклонение сопротивления для партии не превышало 10 ohm.cm. Образец N = 10 пластин, взятый из партии, имеет стандартное отклонение 13,97 ohm.cm, и вопрос, который мы задаем себе: «Правильны ли требования поставщиков?».
Результат программы теперь выглядит так:
______________________________________________ Chi Squared test for sample standard deviation ______________________________________________ Number of Observations = 10 Sample Standard Deviation = 13.97000 Expected True Standard Deviation = 10.00000 Test Statistic = 17.56448 CDF of test statistic: = 9.594e-001 Upper Critical Value at alpha: = 1.692e+001 Upper Critical Value at alpha/2: = 1.902e+001 Lower Critical Value at alpha: = 3.325e+000 Lower Critical Value at alpha/2: = 2.700e+000 Results for Alternative Hypothesis and alpha = 0.0500 Alternative Hypothesis Conclusion Standard Deviation != 10.000 REJECTED Standard Deviation < 10.000 REJECTED Standard Deviation > 10.000 ACCEPTED
В этом случае наша нулевая гипотеза состоит в том, что стандартное отклонение выборки меньше 10: эта гипотеза отвергается в анализе выше, и поэтому мы отвергаем утверждение производителей.
Статья Chi-Square Test for the Standard Deviation раздела Math Toolkit 2.5.0 Chi Squared Distribution Examples может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Chi Squared Distribution Examples ::
реклама |