Проведем множественный регрессионный анализа данных на примере из источника [1]. Имеется набор данных, содержащий информацию о пищевой ценности завтраков из сухих злаков. Каждый вид продукта описывается признаками, в зависимости от значений которых рассчитывается пищевая ценность продукта. Набор данных содержит 77 наблюдений. Выборка данных содержит следующие признаки продукта:
– наименование – наименование продукта;
– производитель – производитель продукта;
– тип – заливается холодной или горячей водой;
– калорийность – содержание калорий в одной порции продукта;
– белок – содержание белка, г;
– жиры – содержание жиров, г;
– натрий – содержание натрия, мг;
– волокна – содержание пищевых волокон, г;
– углеводы – содержание углеводов, г;
– сахар – содержание сахара, г;
– калий – содержание калия, мг;
– витамины – содержание ежедневной рекомендуемой дозы витаминов (0,25 или 100%);
– вес одной порции;
– вода – количество чашек воды на порцию;
– № витрины – витрина, на которой расположен продукт;
– пищевая ценность продукта.
Предполагается, что признаки, описывающие каждый продукт, влияют на его пищевую ценность. Цель анализа – обнаружить закономерности в этих связях. Если закономерности будут найдены, то можно определять пищевую ценность новых продуктов, описываемых тем же набором признаков, разрабатывать новые рецептуры с требуемой пищевой ценностью.
Пусть требуется смоделировать линейную зависимость между выходной переменной пищевая ценность продукта и входными переменными калорийность, белок, жиры, углеводы. В процессе анализа могут возникнуть следующие вопросы:
1 Все ли признаки влияют на пищевую ценность продукта?
2 Какие из признаков влияют сильнее, а какие – слабее?
3 Какие из признаков способствуют повышению пищевой ценности продук-та, а какие – уменьшению?
4 Как влияет изменение отдельного признака на пищевую ценность?
Алгоритм решения:
1. Открываем в пакете Statistica файл Cereals.xls (Import all sheets to a Workbook - Get variable names from first row - Get case names from first column - Do this for all numeric variables when the data is text - Import as Text Labels )
2. Вычислим описательные статистики для исходных данных: Basic Statistics and Tables - Descriptive statistics - ОК. В возникшем окне выберем переменные для анализа – пищевая ценность продукта и калорийность, белок, жиры, углеводы. Затем выберем статистические показатели – Valid N (N набл.), Mean (Среднее), Conf. limits for means (Доверит. интервал среднего) 95%, Minimum & maximum (Минимум и максимум), Range (Размах), Variance (Дисперсия), Standard Deviation (Стандартное отклонение), Std. err. of mean (Стандартн. ошибка среднего) – Summary (OK). На экране появится таблица вычисленных статистических показателей (рисунок 5).
Рис. Фрагмент таблицы пищевой ценности продуктов
Рисунок 5 Описательные статистики для исходных данных
3. Проверим характер распределения переменных на нормальность по критерию Колмогорова–Смирнова. На вкладке Graphs в группе Common выбрем команду Histogram и в окне 2D Histograms во вкладке Advanced, нажав кнопку Variables, выберем переменные для анализа – пищевая ценность продукта и калорийность, белок, жиры, углеводы. Затем выберем Kolmogorov-Smimov test и построим гистограммы с расчетными значениями критерия. Ниже в таблице представлены расчетные значения этого критерия, которые для всех переменных меньше табличного значения D табл = 0,25438 для n = 77 и α = 0,05. Следовательно, эмпирические распределения переменных не отличаются от нормального, и регрессионный анализ можно проводить
Наименование показателя | Расчетное значение критерия К–С D расч |
белок | 0,1961 |
калорийность | 0,2027 |
жиры | 0,2454 |
углеводы | 0,0729 |
пищевая ценность продукта | 0,1304 |
4. Проведем корреляционный анализ. Выберем Basic Statistics and Tables - Correlation matrices - ОК. В появившемся окне Product-Moment and Partial Correlations, нажав кнопку One variable list (Квадратная матрица), выберем переменные для анализа – пищевая ценность продукта и калорийность, белок, жиры, углеводы. Затем нажмем Summary (ОК). На экране появится таблица с результатами корреляционного анализа (рисунок 6). Между переменной пищевая ценность продукта и калорийность наблюдается сильная отрицательная корреляция, средняя корреляция переменной пищевая ценность продукта наблюдается с переменными белок и жиры, самая слабая корреляция с переменной пищевая ценность продукта у переменной углеводы.
Рис.6 Таблица с результатами корреляционного анализа
5. Откроем модуль Multiple Regression (Множественная регрессия). При нажатии на кнопку Variables выбираем зависимую переменную – пищевая ценность продукта – и независимые переменные– калорийность, белок, жиры, углеводы. Во вкладке Advanced выбираемопцию Advanced options (stepwise or ridge regression) (Пошаговая или гребневая регрессия) и нажимаем ОК. В возникшем диалоговом окне Model Definition (Определение модели) в выпадающем списке Method выберем метод обратного исключения (Backward stepwise) и нажимаем кнопку ОК.
6. Пакет STATISTICA проведет оценку коэффициентов методом МНК и выведет на экран окно с результатами множественного регрессионного анализа (рисунок 7). В информационной части окна рассмотрим основные показатели модели:
значение коэффициента детерминации R 2 = 0,80… показывает, что регрессия объясняет более 80% разброса значений переменной пищевая ценность продукта относительно среднего;
значение F -критерия Фишера ( при степенях свободы v 1 = 3 и v 2 = 73 говорит об адекватности регрессионной модели (табл. значение при уровне значимости α = 0,05 для данных степеней свободы F Т < 2,75; ).
значимые коэффициенты регрессии при переменных калорийность, белок, углеводы подсвечены красным цветом.
Рисунок 7 Результаты множественной регрессии
7 Выберем представление результатов в виде таблицы, нажав в окне результатов множественной регрессии кнопку Summary: Regression results. На экране появится таблица вывода (рисунок 8) с итоговыми результатами.
Рисунок 8. Таблица итогов множественной регрессии
Из таблицы получаем следующую регрессионную модель:
пищ цен продукта = 70,3101 – 0,5614·калор+ 6,7599· белок + 1,0381· углевод
Таким образом, переменная жиры была исключена из регрессионной модели.
В таблице результатов содержатся значения статистик t -критерия для коэффициентов уравнения регрессии. Значимые коэффициенты подсвечены красным цветом. Табличное значение t T < 2,00 при уровне значимости α = 0,05 и числе степеней свободы v = N – p = 73. Получили, что все t расч > t T, следовательно, коэффициенты регрессии являются значимыми с доверительной вероятностью 95% по критерию Стьюдента.
8 Для анализа остатков в окне результатов выберем вкладку Residuals/assumptions/prediction и нажмем на кнопку Perform residual analysis. В результате на экране появится окно Residual Analysis (рис.9), во вкладке Residuals (Остатки) которого нажмем на кнопку Casewise plot of residuals (Построчн. график остатков) и выведем на экран таблицу остатков (рис. 10).
Рисунок 9 Окно Residual Analysis (Анализ остатков)
Рисунок 10 Таблица остатков
В этой таблице выделим столбец с остатками Residual и скопируем данные в буфер обмена. Создадим новую таблицу, вставим скопированные данные в столбец, соответствующий переменной Var 1. Запускаем модуль Descriptive statistics. В окне этого модуля во вкладке Normality (Нормальность) установим флажок в опции Kolmogorov-Smimov test - Histograms. Получаем гистограмму (рис. 11), в еѐ окне значение статистики критерия D расч = 0,0964. Расчетное значение критерия D расч меньше табличного значения D табл = 0,25438 для n = 77 и α = 0,05. Следовательно остатки регрессионной модели можно считать нормальными.
Рисунок 11 Гистограмма остатков
9. Выбросы или экстремальные наблюдения могут вызвать искажение оце-нок, вызывая смещение регрессионных коэффициентов. Часто исключение всего одного экстремального наблюдения приводит к существенному изменению уравнения регрессии. В таблице остатков (рис 10) определим экстремальные наблюдения, имеющие наибольшие значения расстояния Махаланобиса (Mahalanobis Distance) и удаленных остатков (Deleted Residual):
Наблюдение Mahalanobis Distance Deleted Residual
All-Bran_with_Extra_ 10,86143 19,09806
Cheerios 10,94732 –18,97752
Mueslix_Crispy_Blend 7,569676 13,4108
Product_19 2,461907 –14,35888
Shredded_Wheat_'n'Br 2,790026 15,45421
Shredded_Wheat_spoon 3,513217 12,73086
Special_K 10,5239 –14,84091
Для анализа выбросов в пакете STATISTICA имеется специальное средство: в окне Residual Analysis ( рисунок 9) выбираем вкладку Outliers (Выбросы), в которой по умолчанию стоит тип выброса для стандартного остатка, большего двух сигма, и нажимаем кнопку Casewise plot of outliers (Построчн. график выбросов). На экране появляется таблица выбросов (рисунок 12). Анализируя наблюдения, имеющие наибольшие значения ос-татков, мы получаем, что эти же наблюдения имеют наибольшие значения рас-стояния Махаланобиса (Mahalanobis Distance) и удаленных остатков (Deleted Residual). Выбросы нуждаются в дополнительных исследованиях, поэтому нужно выяснять причину сильного влияния продукты All-Bran with Extra, Cheerios, Product_19_, Shredded Wheat 'n'3r на регрессионную модель.
Рисунок 12 Таблица выбросов
Варианты заданий для проведения множественного регрессионного анализа в пакете STATISTICA
Для всех вариантов заданий провести следующий анализ:
1 Проверить гипотезу о нормальности распределения переменных по критерию Колмогорова–Смирнова. В случае необходимости осуществить преобразование переменных.
2 Определить зависимость между переменными с помощью регрессионного анализа.
3 Проверить адекватность полученный моделей по F -критерию Фишера. Проверить значимость коэффициентов регрессии.
4 Построить гистограмму остатков. Проверить гипотезу о нормальности распределения остатков по критерию Колмогорова–Смирнова.
5 Выявить значимые наблюдения по расстоянию Махаланобиса (Mahalanobis Distance) и удаленным остаткам (Deleted Residual).
1.
№ | X1 | X2 | X3 | X4 | Y | № | X1 | X2 | X3 | X4 | Y |
2.
№ | X1 | X2 | X3 | X4 | Y | № | X1 | X2 | X3 | X4 | Y |