Переход на главную страницу сайта “Термист” Термист
Термомеханическое упрочнение арматурного проката
технология, средства, разработка
Главная О сайте Стандарты Технология Устройства
Лаборатория Библиотека Глоссарий Желтые страницы Обратная связь

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

См. предыдущий раздел: Определение параметров выборки и проверка гипотезы о нормальности распределения

В трех предыдущих примерах мы подробно рассмотрели процесс определения статистических параметров распределения (среднего и среднеквадратичного отклонения) по гистограммам этого распределения, а также проверку гипотезы о том, что рассматриваемая случайная величина подчиняется нормальному закону распределения. Теперь мы автоматизируем рассмотренные методики и составим в системе MatLab функции, выполняющие эти действия. В качестве исходных данных для примера будем использовать гистограмму распределения в стали марки Ст3пс содержания кремния (см. рис. 1).

Содержание в стали марки Ст3пс марганца

Рис. 1. Распределение значений содержания кремния в катанке из стали марки Ст3пс

Создаем массив из двух столбцов: в первом столбце - значения случайной величины xi, во втором - количество наблюдений для каждого значения случайной величины ni или частота наблюдений для этих интервалов pi(%). В данном случае во втором столбце отображаем частоту наблюдений:

M_Si = [0.05 36; 0.06 61; 0.07 93; 0.08 72; 0.09 22; 0.10 4]

Кроме этого создадим два массива по приведенным ранее примерам. Эти массивы мы используем для тестирования разработанных функций. В массиве M_C во втором столбце разместим число наблюдений, а в массиве M_Mn - их частоту:

M_C = [0.14 8; 0.15 18; 0.16 34; 0.17 43; 0.18 69; 0.19 51; 0.20 36; 0.21 23; 0.22 8]
M_Mn = [0.60 3.8; 0.65 12.6; 0.70 23.2; 0.75 23.5; 0.80 22.9; 0.85 9.6; 0.90 4.4]

Оценка параметров распределения

Функция Stat_Hist приведена ниже:

function [X_sr, S] = Stat_Hist(M)
% Возвращает среднее значение X_sr и среднеквадратичное
% отклонение S для "гистограммной выборки" M.
% M должна состоять из двух столбцов. В первом столбце- значения
% случайной величины, во втором- количество наблюдений для каждого
% значения случайной величины или частота наблюдений.

% Создаем расчетную таблицу
M_1=zeros(length(M(:,1)),4);
M_1(:,1:2)=M;
M_1(:,3)=M_1(:,1).*M_1(:,2);
M_1(:,4)=M_1(:,1).^2.*M_1(:,2);

% Определяем суммы по столбцам
Sum_p_i=sum(M_1(:,2));
Sum_p_i_x_i=sum(M_1(:,3));
Sum_p_i_x_i_kw=sum(M_1(:,4));

% Параметры выборки:
X_sr=Sum_p_i_x_i./Sum_p_i;
S=sqrt((Sum_p_i_x_i_kw-Sum_p_i_x_i.^2/Sum_p_i)./Sum_p_i);

Протестируем функцию (по содержанию в стали марки Ст3пс углерода):
>> [X_Sr, S] = Stat_Hist(M_C)
X_Sr = 0.1809
S = 0.0185
Т.е. полученные результаты совпадают с ранее найденными. Среднее по выборке X_Sr совпадает с ранее найденным средним, а среднеквадратичное отклонение S разится в третьем значащем знаке.

Аналогичное тестирование проведем для распределения в выборке содержания марганца:
>> [X_Sr, S] = Stat_Hist(M_Mn)
X_Sr = 0.7477
S = 0.0722
Среднее арифметическое X_Sr и среднеквадратичное отклонение S полностью совпадают с определенными ранее.

Подставим в приведенную функцию массив, полученный из гистограммы на рис. 1:
>> [X_Sr, S] = Stat_Hist(M_Si)
X_Sr = 0.0698
S = 0.0118.
Таким образом, для приведенного на рис. 1 распределения содержания кремния в выборке для стали марки Ст3пс получим среднее значение Xср = 0.07 % и несмещенную оценку среднеквадратичного отклонения S = 0.0118 %.

Проверка гипотезы о нормальности распределения

Функция Stat_Hist приведена ниже:

function [Alpha_, hi_kw_nabl, hi_kw_krit, X_Sr, S] = ...
                                     Pirs_Hist(M, X_Sr, S, Alpha)
% Проверка гипотезы о нормальности функции распределения при
% помощи критерия Пирсона.
% Входные значения: M, [X_Sr, S, Alpha]
% M - "Гистограммная выборка". Должна состоять из двух столбцов.
% В первом столбце- значения случайной величины, во втором-
% количество наблюдений для каждого значения случайной величины
% или частота наблюдений. (Обязательный параметр)
% X_Sr, S - среднее значение и среднеквадратичное отклонение для
% нормального закона распределения, на соответствие к которому
% проверяется выборка. Если параметры выборки не приведены, они
% определяются. (Требуется наличие функции Stat_Hist)
% Alpha - задаваемый уровень значимости. Если уровень значимости
% не приведен, он принимается равным 0.05.
% Выходные параметры:
% При отсутствии выходных параметров выводится результат
% тестирования в текстовом виде и максимально возможный уровень
% значимости Alpha_.
% Alpha_ - максимально возможный уровень значимости, при котором
% критерий Пирсона не отвергает рассматриваемую гипотезу.
% hi_kw_nabl - наблюдаемый хи-квадрат критерий.
% hi_kw_krit - критическое значение хи-квадрат критерия.
% X_Sr, S - среднее и среднеквадратичное отклонение для наблюдаемой
% выборки.

% Проверка наличия входных параметров
if nargin == 1
   % Если среднее и среднеквадратичное отклонения не заданы,
   % они определяются. (Требуется наличие функции Stat_Hist)
   [X_Sr, S] = Stat_Hist(M);
   % Уровень значимости принимается равным 0.05
   Alpha=0.05;
   k=length(M(:,1))-2-1; % Число степеней свободы (два параметра
                         % распределения определяются)
else
   k=length(M(:,1))-1; % Число степеней свободы (параметры
                       % распределения заданы)
end

% Создаем расчетную таблицу
M_1=zeros(length(M(:,1)),10);
M_1(:,1:2)=M;
sum_n_i=sum(M_1(:,2)); % Количество наблюдаемых значений
                       % или суммы частот

% Определяем границы интервалов
Del=diff(M_1(:,1))./2;
M_1(1:(end-1),3)=M_1(1:(end-1),1)-Del; M_1(end,3)=M_1(end,1)-Del(end);
M_1(1,4)=M_1(1,1)+Del(1); M_1(2:end,4)=M_1(2:end,1)+Del;

% Интегральные функции распределения на границах интервалов
% для нормально распределенной функции
M_1(:,5:6) = normcdf(M_1(:,3:4), X_Sr, S);
M_1(:,7) = M_1(:,6)-M_1(:,5);

% Определяем расчетное общее количество испытаний n_
sum_p_i=sum(M_1(:,7));
n_=sum_n_i./sum_p_i;

% Расчетные столбцы таблицы
M_1(:,8)=n_.*M_1(:,7);
M_1(:,9)=M_1(:,2)-M_1(:,8);
M_1(:,10)=M_1(:,9).^2./M_1(:,8);

% Наблюдаемое значение хи-квадрат статистики
hi_kw_nabl=sum(M_1(:,10));

% Критическое значение хи-квадрат статистики
hi_kw_krit=chi2inv(1-Alpha, k);

% Максимально возможный уровень значимости
Alpha_ = 1 - chi2cdf(hi_kw_nabl, k);

% Текстовый вывод результата теста
if nargout == 0
   if hi_kw_nabl <= hi_kw_krit
      disp(['Гипотезу можно принять при уровне значимости ' num2str(Alpha_) ' > 0.05'])
   else
      disp(['Гипотезу следует отвергнуть при уровне значимости ' num2str(Alpha_) ' < 0.05'])
   end
end

Протестируем функцию (по содержанию в стали марки Ст3пс углерода и марганца):
>> Pirs_Hist(M_C);
Гипотезу можно принять при уровне значимости 0.54024 > 0.05
>> Pirs_Hist(M_Mn);
Гипотезу можно принять при уровне значимости 0.85424 > 0.05
Т.е. гипотезы о том, что распределение в стали содержания углерода и марганца подчинены нормальному закону распределения отвергать не следует.

Подставим в приведенную функцию массив, полученный из гистограммы на рис. 1:
>> Pirs_Hist(M_Si);
Гипотезу можно принять при уровне значимости 0.11092 > 0.05.
Таким образом, приведенное на рис. 1 распределение содержания кремния в выборке для стали марки Ст3пс можно считать нормальным.

Более полный анализ можно произвести с помощью этой же функции, вызвав выходные параметры:
>> [Alpha_, hi_kw_nabl, hi_kw_krit, X_Sr, S] = Pirs_Hist(M_Si)
Alpha_ = 0.1109
hi_kw_nabl = 6.0143
hi_kw_krit = 7.8147
X_Sr = 0.0698
S = 0.0118
Таким образом, для приведенной гистограммы среднее значение исследуемого параметра составит 0.070 %, несмещенная оценка среднеквадратичного отклонения - 0.0118 %, наблюдаемая χ2-статистика - 6.01, а критическое значение для этой статистики при уровне значимости 0.05 составит 7.81. Поскольку наблюдаемая статистика меньше критической, гипотезу о том, что рассматриваемое распределение подчиняется нормальному закону распределения отвергать не стоит. Аналогичный вывод можно сделать при более высоком уровне значимости - до 0.11.

 

Читать дальше: Понятие нормализованной выборки



См. проект "Анализ свойств по нормализованным выборкам"

К началу страницы


Web-сайт “Термист” (termist.com)
Термомеханическое упрочнение арматурного проката

Отсутствие ссылки на использованный материал является нарушением заповеди "Не укради"

Редактор сайта: Гунькин И.А. (termist.com@gmail.com)