Метод тьюки в excel
Метод наименьших квадратов (МНК) основан на минимизации суммы квадратов отклонений выбранной функции от исследуемых данных. В этой статье аппроксимируем имеющиеся данные с помощью линейной функции y = a x + b .
Метод наименьших квадратов (англ. Ordinary Least Squares , OLS ) является одним из базовых методов регрессионного анализа в части оценки неизвестных параметров регрессионных моделей по выборочным данным.
Рассмотрим приближение функциями, зависящими только от одной переменной:
- Линейная: y=ax+b (эта статья)
- Логарифмическая : y=a*Ln(x)+b
- Степенная : y=a*x m
- Экспоненциальная : y=a*EXP(b*x)+с
- Квадратичная : y=ax 2 +bx+c
Примечание : Случаи приближения полиномом с 3-й до 6-й степени рассмотрены в этой статье. Приближение тригонометрическим полиномом рассмотрено здесь.
Линейная зависимость
Нас интересует связь 2-х переменных х и y . Имеется предположение, что y зависит от х по линейному закону y = ax + b . Чтобы определить параметры этой взаимосвязи исследователь провел наблюдения: для каждого значения х i произведено измерение y i (см. файл примера ). Соответственно, пусть имеется 20 пар значений (х i ; y i ).
Для наглядности рекомендуется построить диаграмму рассеяния.
Примечание: Если шаг изменения по х постоянен, то для построения диаграммы рассеяния можно использовать тип График , если нет, то необходимо использовать тип диаграммы Точечная .
Из диаграммы очевидно, что связь между переменными близка к линейной. Чтобы понять какая из множества прямых линий наиболее «правильно» описывает зависимость между переменными, необходимо определить критерий, по которому будут сравниваться линии.
В качестве такого критерия используем выражение:
Вышеуказанное выражение представляет собой сумму квадратов расстояний между наблюденными значениями y i и ŷ i и часто обозначается как SSE ( Sum of Squared Errors ( Residuals ), сумма квадратов ошибок (остатков) ) .
Метод наименьших квадратов заключается в подборе такой линии ŷ = ax + b , для которой вышеуказанное выражение принимает минимальное значение.
Примечание: Любая линия в двухмерном пространстве однозначно определяется значениями 2-х параметров: a (наклон) и b (сдвиг).
Считается, что чем меньше сумма квадратов расстояний, тем соответствующая линия лучше аппроксимирует имеющиеся данные и может быть в дальнейшем использована для прогнозирования значений y от переменной х. Понятно, что даже если в действительности никакой взаимосвязи между переменными нет или связь нелинейная, то МНК все равно подберет «наилучшую» линию. Таким образом, МНК ничего не говорит о наличии реальной взаимосвязи переменных, метод просто позволяет подобрать такие параметры функции a и b , для которых вышеуказанное выражение минимально.
Проделав не очень сложные математические операции (подробнее см. статью про квадратичную зависимость ), можно вычислить параметры a и b :
Как видно из формулы, параметр a представляет собой отношение ковариации и дисперсии , поэтому в MS EXCEL для вычисления параметра а можно использовать следующие формулы (см. файл примера лист Линейная ):
= КОВАР(B26:B45;C26:C45)/ ДИСП.Г(B26:B45) или
Также для вычисления параметра а можно использовать формулу = НАКЛОН(C26:C45;B26:B45) . Для параметра b используйте формулу = ОТРЕЗОК(C26:C45;B26:B45) .
И наконец, функция ЛИНЕЙН() позволяет вычислить сразу оба параметра. Для ввода формулы ЛИНЕЙН(C26:C45;B26:B45) необходимо выделить в строке 2 ячейки и нажать CTRL + SHIFT + ENTER (см. статью про формулы массива, возвращающими несколько значений ). В левой ячейке будет возвращено значение а , в правой – b .
Примечание : Чтобы не связываться с вводом формул массива потребуется дополнительно использовать функцию ИНДЕКС() . Формула = ИНДЕКС(ЛИНЕЙН(C26:C45;B26:B45);1) или просто = ЛИНЕЙН(C26:C45;B26:B45) вернет параметр, отвечающий за наклон линии, т.е. а . Формула = ИНДЕКС(ЛИНЕЙН(C26:C45;B26:B45);2) вернет параметр, отвечающий за пересечение линии с осью Y, т.е. b .
Вычислив параметры, на диаграмме рассеяния можно построить соответствующую линию.
Инструмент диаграммы Линия тренда
Еще одним способом построения прямой линии по методу наименьших квадратов является инструмент диаграммы Линия тренда . Для этого выделите диаграмму, в меню выберите вкладку Макет , в группе Анализ нажмите Линия тренда , затем Линейное приближение .
Поставив в диалоговом окне галочку в поле «показывать уравнение на диаграмме» можно убедиться, что найденные выше параметры совпадают со значениями на диаграмме.
Примечание : Для того, чтобы параметры совпадали необходимо, чтобы тип у диаграммы был Точечная, а не График . Дело в том, что при построении диаграммы График значения по оси Х не могут быть заданы пользователем (пользователь может указать только подписи, которые не влияют на расположение точек). Вместо значений Х используется последовательность 1; 2; 3; … (для нумерации категорий). Поэтому, если строить линию тренда на диаграмме типа График , то вместо фактических значений Х будут использованы значения этой последовательности, что приведет к неверному результату (если, конечно, фактические значения Х не совпадают с последовательностью 1; 2; 3; …).
СОВЕТ : Подробнее о построении диаграмм см. статьи Основы построения диаграмм и Основные типы диаграмм .
Выбросы — точки, сильно выбивающиеся из последовательности, не вписывающиеся в модель по какой-либо причине. Люди озаботились выбросами, желая избавиться от них. Выбросы оттягивают на себя средние значения и сдвигают распределение данных. [1] Иногда выбросы – просто ошибка ввода. Поэтому первая причина обращать внимание на выбросы — это обеспечение чистоты анализа данных и моделирования. Но есть и другая – определение выбросов интересно само по себе!
Рис. 1. Вероятность 349-дневной беременности
Представьте, что после подозрительной транзакции вам звонит компания, выпустившая вашу кредитную карту. Она определяет эту транзакцию как выброс, основываясь на вашем поведении в прошлом. И вместо игнорирования транзакции как выброса, она помечает ее как потенциально мошенническую и начинает действовать соответственно.
Как найти «выбивающиеся» точки? В кластерном анализе (см. главы 2 и 5) нас интересовали группы. При определении выбросов вам важны точки, которые отличаются от групповых. Они выделяются, являясь в некотором роде исключениями.
Захватывающее дело Хадлум против Хадлум
В 1940-х годах, британец по имени мистер Хадлум ушел на войну. Спустя 349 дней его жена, миссис Хадлум, родила. В среднем беременность длится 266 дней. Таким образом получается, что миссис Хадлум носила ребенка лишних 12 недель. Исключительно долгая беременность, не правда ли? Именно так и утверждала миссис Хадлум.
Исследования показали, что продолжительность беременности — величина с более-менее нормальным распределением со средним значением в 266 дней после оплодотворения и стандартным отклонением около 9. Так что можно вычислить значение функции нормального интегрального распределения, и получить вероятность 349-дневной беременности. В Excel для этого используется функция НОРМРАСП (рис. 1). Мы получили 0,000000 насколько хватает глаз. Другими словами, человеческого детеныша практически невозможно вынашивать так долго.
Границы Тьюки
Концепция того, что выбросы — это маловероятные точки на колоколообразной кривой, привела к границам Тьюки. Метод Тьюки заключается в следующем:
- Рассчитать 1-й и 3-й квартиль (или, что тоже самое, 25-й и 75-й персентиль) ряда данных, в котором вы хотите найти выбросы.
- Вычесть первый квартиль из третьего — получится мера распределения данных, называемая межквартильным размахом (МР). МР устойчив к экстремальным значениям распределения (то есть робастный), в отличие от стандартной ошибки, которая более чувствительна к выбросам.
- Рассчитать нижнюю и верхнюю внутренние границы, отстоящие на 1,5МР от квартилей.
- Рассчитать нижнюю и верхнюю внешние границы, отстоящие на 3МР от квартилей.
- Значение за пределами границ – экстремально. Нормальное распределение дает одну точку на 100 вне внутренних границ, и одну на 500 000 – вне внешних.
Применение границ Тьюки
Срок беременности миссис Хадлум выходит далеко за границы Тьюки (рис. 2).
Рис. 2. Границы Тьюки для продолжительности беременности
Примените к исходным данным условное форматирование, чтобы выделить значения, выходящие за пределы границ (рис. 3). Миссис Хадлум «покраснела», т.е., ее беременность экстремальна. Прокрутив данные до конца, вы увидите, что красных ячеек больше нет, но есть девять желтых. Это очень похоже на примерно одну точку из 100, что и предполагалось правилом Тьюки.
Рис. 3. Добавление условного форматирования выбросов
Ограничения метода Тьюки
Границы Тьюки работают при выполнении всех трех условий:
- Данные распределены более-менее нормально. Распределение может не быть идеальным, но кривая должна быть колоколообразной и близкой к симметричной, без разных длинных хвостов, вылезающих с одной стороны (подробнее см. Крис Андерсон. Длинный хвост. Эффективная модель бизнеса в Интернете).
- Выброс «отмечен» как экстремальное значение на внешней стороне распределения.
- Данные одномерны.
Рассмотрим пример выброса, который не удовлетворяет первым двум условиям. В «Братстве Кольца», объединившись, наконец, в одну компанию (братство, в честь которого и названа книга), герои встают небольшой группой и слушают лидера эльфов, произносящего речь о том, кто они есть и какова их цель. В этой группе есть четверо высоких ребят — Гэндальф, Арагорн, Леголас и Боромир — и четверо приземистых. Это хоббиты: Фродо, Мерри, Пиппин и Сэм. Среди них есть один гном — Гимли. Гимли ниже первых на две головы, но выше вторых примерно настолько же (рис. 4). В фильме, когда мы впервые видим эту группу, Гимли явно выделяется по росту. Он не принадлежит ни к одной из групп.
Рис. 4. Гимли, сын Глойна, «гномий» выброс
Но является ли он выбросом? Его рост не ниже всех и не выше. На самом деле, его рост ближе всего к среднему в группе. Это распределение роста ничем не похоже на нормальное. Можно назвать его «мультимодальным» (распределение с несколькими пиками). И Гимли является выбросом не из-за выдающегося роста, а всего лишь оттого, что находится между двумя пиками. А если данные многомерны, то такие точки в них найти еще сложнее.
Такой вид выбросов довольно часто обнаруживается в случаях мошенничества. Кто-то слишком обычный, чтобы быть обычным. Берни Мейдофф — отличный пример такого выброса. Если в большей части схем Понци предлагался размер выплат более 20% сверху, больше похожий на выброс, то Мейдофф стал предлагать скромные надежные выплаты, смешивающиеся с шумом каждый год — он не перепрыгивал никаких границ Тьюки. Но постепенно эти выплаты из-за своей надежности превратились в многомерный выброс.
Как же находить выбросы в случае многомерности данных? Один из способов решения этого вопроса — отнестись к данным как к графу (см. Кластерный анализ: сетевые графы и определение сообществ). Что определяет Гимли как выброс относительно остальных точек данных — это расстояние от него до них относительно расстояния между ними самими. Все эти расстояния, от одной точки до другой, определяют ребра графа. С его помощью можно «выманить» изолированные точки. Для этого нужно начать с создания графа k-ближайших соседей.
Исходные данные сотрудников колл-центра
Компания также следит за множеством других показателей своих работников. Сколько раз они опоздали в этом году? Сколько у них было ночных смен и смен, приходящихся на выходные? Сколько они брали больничных и какое количество из них приходилось на пятницу? Компания знает, сколько часов сотрудник тратит на внутренние обучающие курсы (компания оплачивает до 40 часов) и сколько раз он отклонял запрос на замену смен или шел навстречу просьбам коллег. Данные на каждого из 400 сотрудников службы поддержки содержатся в таблице (рис. 5). Вопрос в том, кто из них является выбросом и какие выводы о его работе можно сделать?
Рис. 5. Показатели сотрудников; чтобы увеличить изображение кликните на нем правой кнопкой мыши и выберите Открыть картинку в новой вкладке
Нормализация данных
Поскольку каждый столбец имеет свои единицы измерения, нужно стандартизировать данные:
- вычесть среднее значение столбца из каждого наблюдения, а затем…
- разделить каждое наблюдение на стандартное отклонение столбца (рис. 6).
Для нормально распределенных данных среднее = 0, а стандартное отклонение = 1.
Примечание. Выбросы могут испортить среднее значение и стандартное отклонение, поэтому иногда специалисты предпочитают стандартизировать данные вычитанием медианы и делением на размах.
Рис. 6. Среднее значение и стандартное отклонение для каждого параметра
Создайте новый лист, и отразите на нем стандартизованные значения. Для этого можно использовать функцию НОРМАЛИЗАЦИЯ (рис. 7).
Рис. 7. Нормализованный набор данных о работе персонала
Создание графа
Граф есть не что иное как ребра и вершины. В нашем случае каждый работник является вершиной, и для начала можно просто провести ребра между ними всеми. Длина ребра — это евклидово расстояние между двумя работниками в их нормализованных данных. Евклидово расстояние (подробнее см. главу 2) между двумя точками — это квадратный корень из суммы квадратов разниц каждого столбца для каждого из них.
На новом листе с помощью формулы СМЕЩ создайте матрицу расстояний между сотрудниками (рис. 8).
Рис. 8. Матрица расстояний между сотрудниками
Формулы в диапазоне С3:ОL402 – это формулы массива, поэтому их нужно вводить нажатием клавиш Ctrl+Shift+Enter (подробнее о формулах массива см. Майкл Гирвин. Ctrl+Shift+Enter. Освоение формул массива в Excel). Евклидово расстояние работника 144624 до самого себя равно 0. У вас есть граф сотрудников. Можете экспортировать его в Gephi как в главе 5, и взглянуть на то, что получится, но так как у него 16 000 ребер и только 400 вершин, это наверняка жуткая картина.
Мы сфокусируемся лишь на k ближайших соседях каждого сотрудника, чтобы найти выбросы. Первый шаг — ранжирование, то есть расположение работников согласно расстояниям относительно друг друга. Это приводит нас к первому и основному методу выделения выбросов на графе.
Вычисляем k ближайших соседей
Создайте новый лист (рис. 9). Вставьте персональные номера от А1 вниз и от В1 вправо, чтобы получилась основу матрицы. Ранжируйте каждого работника в верхней строке в соответствии с его расстоянием до работников в столбце А. Начните с 0 таким образом, чтобы ранг 1 оказался у других работников, а 0 образовали диагональ графа (так как расстояния до самих себя всегда самые короткие).
Рис. 9. Каждый сотрудник в столбце ранжирован относительно каждой строки
Определение выбросов на графе, метод 1: полустепень захода
Подсчитайте, как часто каждый сотрудник попадает в ТОП-5 ближайших соседей, а в ТОП-10? ТОП-20? То есть сколько человек выбирают его одним из 5 ближайших соседей, или 10, или 20? Полустепень захода — это количество ребер, входящих в любую вершину графа. Чем ниже полустепень захода, тем больше вы похожи на выброс, потому что никто не хочет быть вашим соседом (рис. 10). Конечно, вы можете выбрать любое k, но на этот раз вполне достаточно 5, 10 и 20. С помощью условного форматирования выделите ячейки, чье значение равно 0 (что значит отсутствие входящих ребер для этой вершины на графе такого размера).
Рис. 10. Полустепени захода трех разных графов (ТОП-5, ТОП-10, ТОП-20) ближайших соседей
Оказалось, что существуют всего двое сотрудников, у которых даже на графе 20 ближайших соседей нет ни одного входящего ребра. Никто не считает их соседями, даже 20 ближайших. Это довольно далеко! Персональные номера этих двоих ребят — 137155 и 143406. Переключившись обратно во лист Сотрудники, изучите их внимательнее (рис. 11). Сотрудник 137155 имеет большое среднее количество жетонов, высокий клиентский рейтинг и он кажется добрым самаритянином. Он брал много смен в выходные, ночью и семь раз заменял тех, кто просил его об этом. Мило! Вот кто во всех измерениях достаточно исключителен, чтобы не попасть даже в 20 ближайших расстояний до любого другого сотрудника. Удивительно! Наверное, такие работники заслуживают пиццы или чего-то подобного.
Рис. 11. Данные о работе сотрудников 137155 и 143406
Сотрудник 143406 явно контрастирует с предыдущим служащим. Никакие параметры сами по себе не являются достаточными условиями для увольнения, но количество его жетонов на два стандартных отклонения ниже среднего, клиентский рейтинг тоже примерно на пару отклонений ниже распределения. Число опозданий выше среднего и пять из шести больничных приходятся на пятницу. А еще он просил заменить себя 4 раза, но ни разу не откликнулся на просьбы коллег. Такие сотрудники остаются на местах благодаря системе. Удовлетворяя минимальным требованиям трудоустройства (заметьте, что здесь никто не переходит границ Тьюки), они плавно скатываются к краям любого распределения.
Определение выбросов на графе, метод 2: нюансы k-расстояния
Одним из недостатков метода, описанного выше, является то, что мы лишь определили, имеет ли сотрудник ребра на графе k ближайших соседей. Было бы неплохо иметь количественную оценку «выбросовости». Рассмотрим ранжирование выбросов с помощью величины под названием k-расстояние. K-расстояние — это расстояние от сотрудника до его k-го соседа (рис. 12). Видно, что плохой работник 143604, оказывается существенно дальше, чем 137155, и оба эти значения сильно превосходят следующее по величине значение, равное 3,54.
Рис. 12. Сотрудники с k-расстоянием более 3,3
Все же у этого метода есть недостаток (рис. 13). Хотя треугольная точка — самый что ни на есть выброс, но все же его k-расстояние меньше, чем у некоторых ромбов. Дело в том, что треугольник не является глобальным выбросом, потому что он — локальный выброс. Причина, по которой ваши глаза зафиксировали в качестве странного именно его, заключается в том, что он ближе к кластеру кружков. Если бы треугольник оказался среди ромбов, все было бы иначе.
Рис. 13. k-расстояние не работает с локальными выбросами
Определение выбросов на графе, метод 3: факторы локальных выбросов
Как и k-расстояния, факторы локальных выбросов (ФЛВ) дают по одному «баллу» за каждую точку. Чем больше баллов, тем в большей степени выбросом является точка. Но ФЛВ дает вам нечто немного большее: чем ближе балл к единице, тем более обыкновенна данная точка локально. С ростом балла точка считается все менее типичной и более относящейся к выбросам.
На высоком уровне это работает так: ты являешься выбросом, если k твоих ближайших соседей считают тебя дальше, чем их соседи считают их самих. Алгоритму интересны друзья точек и их друзья. Так он понимает слово «локальный». Анализируя рис. 13, можно понять, что именно делает треугольник выбросом. У него может не быть лучшего k-расстояния, но отношение расстояния треугольника к его ближайшим соседям по сравнению с их расстояниями друг до друга довольно велико (рис. 14).
Рис. 14. Треугольник не настолько далек от своих соседей, как далеки они друг от друга
Расстояние достижимости. Перед тем, как свести вместе все факторы локальных выбросов для каждого сотрудника, нужно рассчитать еще одну последовательность чисел — расстояние достижимости. Расстояние достижимости сотрудником А сотрудника В — это обычное расстояние между ними, пока А не оказывается по соседству с В, то есть удаленным на k-расстояние, которое и превращается в таком случае в расстояние достижимости. Другими словами, если А попадает в окрестность точки В, вы округляете расстояние от А до В до размера окрестности, а если же нет — то просто оставляете без изменений.
Использование расстояния достижимости вместо обычного расстояния при расчете ФЛВ помогает немного стабилизировать вычисления. Создайте новый лист Достижимость и замените расстояния из вкладки k-расстояние новыми расстояниями достижимости (рис. 15).
Рис. 15. Расстояния достижимости
Теперь все готово к вычислению факторов локальных выбросов для каждого сотрудника. Создайте новую вкладку ФЛВ (рис. 16). В столбце В отображается то, как выглядит каждый сотрудник с точки зрения пяти своих ближайших соседей. Фактор локального выброса для сотрудника (столбец С) — это среднее значение отношений расстояний достижимости этого сотрудника, разделенное на средние достижимости каждого из k своих соседей.
Рис. 16. Средняя достижимость каждого сотрудника относительно его соседей; фильтром выделены значения с ФЛВ > 1,4
Чем больше единицы значение в столбце С, тем больше данный сотрудник является локальным выбросом. Например, сотрудник 143406, штатный халтурщик, — самая отдаленная точка с ФЛВ, равным 1,97. Его соседи видят его вдвое дальше, чем другие соседи видят их самих. Это довольно далеко от группы.
Теперь у вас есть по одному значению, соотнесенному с каждым сотрудником, которое ранжирует его как локальный выброс и измеряется независимо от размера графа.
[1] Написано по материалам книги Джона Формана Много цифр: Анализ больших данных при помощи Excel. – М.: Альпина Паблишер, 2016. – С. 383–409
Пусть имеется случайная переменная Y , значения которой мы можем измерять. Исследователь предполагает, что эта переменная зависит от фактора, значения которого мы можем контролировать, т.е. задавать с требуемой точностью. Покажем как методом дисперсионного анализа ( ANOVA ) проверить гипотезу о наличии или отсутствии влияния указанного фактора на зависимую переменную Y .
Disclaimer : Эта статья – о применении MS EXCEL для целей Дисперсионного анализа, поэтому данную статью не стоит рассматривать, как пересказ главы из учебника по статистике. Статья не обладает ни полнотой, ни строгостью изложения положений статистической науки. Теоретические отступления приведены лишь из соображения логики изложения. Использование данной статьи для изучения теории Дисперсионного анализа – плохая идея. Хорошая идея - найти в этой статье формулы MS EXCEL для проведения Дисперсионного анализа.
Перед прочтением этой статьи рекомендуется освежить в памяти следующие понятия статистики:
- Проверка статистических гипотез ;
- Дисперсия и среднее значение ;
- Распределение Фишера и квантили этот распределения;
- F-тест ;
- Блочные диаграммы .
Дисперсионный анализ (ANOVA, ANalysis Of VAriance) позволяет проверить гипотезу о равенстве нескольких средних значений выборок (взяты ли выборки из одного распределения или из разных распределений).
Примечание : В статье Двухвыборочный t-тест с одинаковыми дисперсиями решалась подобная задача о сравнении средних значений 2-х распределений. Здесь рассмотрим более общую задачу – будем одновременно сравнивать несколько средних значений выборок (более 2-х).
Чтобы пояснить суть дисперсионного анализа приведем пример.
Сгенерируем 2 выборки: первую возьмем из нормального распределения со средним значением равно 4, вторую со средним - 5 ( стандартные отклонения одинаковые). Сказать, сильно ли они различаются или нет, невозможно, пока мы не знаем разброс (стандартное отклонение) значений в каждой выборке относительно среднего. Если зададим в распределениях небольшой разброс, скажем 0,1, то в каждой выборке получим близкое к нему значение. В этом случае, очевидно, что наблюдаемое различие между средними равное 1 (5-4=1) – значительное и можно говорить, что выборки взяты из разных распределений (см. картинку ниже).
Если же разброс в выборках составляет около 2, то наблюжаемое различие средних значений выборок равное 1 уже не кажется таким значительным.
В дисперсионном анализе эти значения выборок представляют собой значения зависимой переменной Y, а выборки берутся при различных уровнях фактора Х. В первом случае для того дать ответ о зависимости Y от фактора Х, даже не нужно проводить дисперсионный анализ : из диаграммы итак очевидно, что отличие между средними значениями выборок (5-4=1), гораздо больше разброса внутри выборки (0,1). Следовательно, очевидно, что выборки взяты из различных генеральных совокупностей (с различными распределениями), которые соответствуют разным значениям Х.
Во втором случае без дисперсионного анализа не обойтись. Различие между средними значениями может быть обусловлено просто случайностью выборок, взятых из одного распределения.
В конце статьи мы определим математически точно условие «значимости» различия средних выборок .
Немного теории
Примечание : Пользователи, уверенно владеющие методом дисперсионного анализа , могут перейти непосредственно к формулам MS EXCEL .
Пусть необходимо исследовать зависимость некой количественной случайной величины Y от одной переменной, которую мы можем контролировать (устанавливать их значения с требуемой точностью). В теории дисперсионного анализа переменная Y называется зависимой переменной ( dependent или response variable ), а переменные, от которых исследуется зависимость переменной Y, называются факторами или зависимыми переменными ( factors или dependent variables ).
Для целей этой статьи будем предполагать, что Y зависит только от одного фактора.
Примечание : Случай зависимости от 2-х факторов рассмотрен в статье Двухфакторный дисперсионный анализ .
Отдельные, заданные значения фактора называются уровнями ( levels ) или испытаниями ( treatments ).
Так как мы можем контролировать значения, которые принимает фактор , то данные (набор значений Y), которые получены в результате испытаний, мы назовем экспериментальными , а сам процесс получения этих данных - экспериментом .
Целью эксперимента является исследование влияния различных уровней фактора на переменную Y. В самом деле, так как фактор нами контролируется, то у нас есть возможность сделать несколько наблюдений (измерений) величины Y при определенном заданном уровне фактора. Зачем их делать несколько, ведь значения Y должны получиться одинаковыми? Нет. Так как мы предполагаем, что на переменную Y может влиять множество неконтролируемых нами факторов, то мы будем получать в ходе каждого измерения несколько отличающиеся значения Y. Единственное, что мы можем сделать, это обеспечить одинаковые условия проведения эксперимента для всех измерений.
Например, измеряя расход бензина на 100 км/ч одной и той же марки бензина на одном и том же автомобиле, мы будем получать несколько различные значения. Может непредсказуемо измениться направление ветра, состояние дороги или автомобиля, что в свою очередь повлияет на расход.
Уровни фактора (treatments) будем обозначать буквой j (j изменяется от 1 до a ). Каждому уровню фактора соответствует одна выборка (состоит из нескольких измерений). Предполагается, что дисперсии всех выборок σ 2 неизвестны, но равны между собой.
Непосредственно измеренные значения Y при заданном уровне фактора j будем обозначать y ij . Количество наблюдений для разных уровней факторов может быть одинаковым или отличаться.
Примечание : Чем больше количество измерений/наблюдений (т.е. размер выборки) мы сделаем, тем более обоснованным будет наш статистический вывод о равенстве средних значений этих выборок.
В тексте статьи будем рассматривать только равные выборки, их размер обозначим n. В Этом случае общее количество измерений N=n*a.
Примечание : В файле примера выполнены вычисления для обоих случаев (равные и неравные по размеру выборки).
Если фактор действительно оказывает влияние на зависимую переменную Y, то при различных уровнях фактора мы должны в среднем получать различные значения Y. Другими словами, мы должны получить «заметно различающиеся» средние выборок при различных уровнях фактора:
Остается выяснить, что значит средние выборок «заметно отличаются».
Стандартные обозначения дисперсионного анализа
Общий подход при проведении Дисперсионного анализа: проверить значимость различия средних значений выборок, сравнив один источник разброса (проверяемый фактор) с другим источником разброса (обоснованный лишь случайностью выборок/ случайным воздействием неконтролируемых факторов):
Введя нижеуказанные обозначения, выражение можно записать в компактной форме:
Эти общеупотребительные обозначения расшифровываются следующим образом: SS – это сокращение английского выражения Sum of Squares (сумма квадратов отклонений от среднего), T – это сокращение от Total (Общее среднее), А – это фактор А, E – это сокращение от Error (ошибка).
На основании данных определений, вышеуказанное выражение может быть преобразовано в вычислительную форму:
где, – общее среднее:
Обратите внимание, что квадраты отклонений имеют размерность дисперсии , т.е. меры изменчивости. Теперь очевидно, что левая часть выражения представляет собой общую изменчивость (разброс) каждого из наблюдений относительно общего среднего. Эта общая изменчивость (SST) состоит из двух частей: SSA - изменчивость, объясненная нашей моделью (междувыборочная изменчивость, основанная на различиях в уровнях фактора) и из SSE - ошибка модели (внутривыборочная изменчивость, сумма разбросов наблюдений внутри каждой выборки).
Также в дисперсионном анализе используется понятие среднего квадрата отклонений (Mean Square), т.е. MS. Соответственно для SST имеем MST=SST/(N-1), для SSA имеем MSA=SSA/(n-1), для ошибки модели SSE имеем MSE=SSE/(a(n-1)).
MS имеет смысл средней изменчивости на 1 наблюдение (с некоторой поправкой). Эта поправка отражает тот факт, что MS должна вычисляться не делением SS на соответствующее количество наблюдений, а на число степеней свободы (degrees of freedom, DF). Например, чтобы вычислить MST, мы из N (общего количества наблюдений) должны вычесть 1, т.к. в выражении SST присутствует одно среднее значение (аналогично тому, как мы делали при вычислении дисперсии выборки ). Одна степень свободы теряется при вычислении среднего – это видно в формуле выражения для SST.
В SSA мы имеем уже а средних значений (равно количеству уровней фактора, т.е. количеству выборок). Поэтому, из общего количества наблюдений a *n необходимо вычесть а – количество вычисленных средний значений выборок (an-a=a(n-1)).
Напомним, что в дисперсионном анализе проверяется гипотеза о равенстве средних значений этих выборок. Т.е. формулируется нулевая гипотеза Н 0 , которая утверждает, что Y не зависит от фактора и все выборки, измеренные при различных уровнях фактора, на самом деле взяты из одного распределения с общим средним.
Идем дальше. Оказывается, если нулевая справедлива , то:
- случайная величина MSА представляет собой оценку σ 2
- отношение MSА/MSE имеет распределение Фишера с а-1 и a(n-1) степенями свободы.
MSА/MSE обозначают как F 0 ( тестовая статистика для однофакторного дисперсионного анализа ).
Примечание : Можно показать, что MSE также представляет собой оценку σ 2 дисперсии выборок ( математическое ожидание случайной величины MSE равно σ 2 ). Но, в отличие от MSА, MSE представляет собой оценку σ 2 вне зависимости от того, справедлива ли нулевая справедлива или нет.
Теперь, введя основные понятия, рассмотрим вычислительную часть дисперсионного анализа на примере решения задачи.
Задача
В качестве задачи рассмотрим технологический процесс изготовления нити в химическом реакторе.
Пусть предполагается, что инженер исследует влияние некой добавки на прочность нити Y. Он решает провести эксперимент:
- Использовать 4 различных концентраций добавки (1%; 5%; 7% и 10%). Прим .: эти значения концентраций не участвуют в расчетах.
- Провести по 6 (n) измерений прочности нити для каждой концентрации добавки.
Таким образом, имеется только 1 фактор (концентрация добавки). Фактор имеет 4 (а=4) различные уровня (j=1; 2; 3; 4). Всего у нас имеется 24 (N=4*6) измерения.
Вроде бы эксперимент полностью описан, теперь инженеру требуется только провести измерения. Однако, есть еще одна сложность: на разброс результатов при различных уровнях фактора может повлиять то, как мы проводим эксперимент.
О рандомизированном эксперименте
Представим, что у нас есть только 1 реактор. Инженер включает реактор, делает 6 измерений для первого уровня, затем, для 2-го и т.д. В итоге, может случиться так, что первые 6 измерений у нас будут выполнены в реакторе, который только начал прогреваться, а последние 6, когда он полностью вышел в рабочий режим. Понятно, что такой подход не годится: на разброс выборок может влиять не только концентрация добавки, но и порядок, в котором проводились измерения.
Также не годится подход, когда используются 4 одинаковых, но отдельных реактора для каждого эксперимента: первый реактор для концентрации 1%, второй - для 5% и т.д. Однако, индивидуальные особенности каждого реактора (период эксплуатации, воздействие ремонтов, незначительное различие конструкции допущенное при изготовлении) могут сказаться на разбросе выборки.
То есть для постановки правильного эксперимента требуется исключить влияние конкретного устройства (experimental unit) на значение переменной Y.
Обычно используют полностью рандомизированный эксперимент (completely randomized experimental design) – это когда для каждого испытания ( treatment ) выбираются образцы экспериментального устройства выбираются случайным способом.
Например, для нашего случая можно предложить следующую схему полностью рандомизированного эксперимента : мы случайным образом выбираем из большого количества одинаковых ректоров (например, из 1000) 6 ректоров для наблюдений первого уровня фактора (для каждого наблюдения 1 реактор), 6 – для второго и т.д. Всего 24 ректора из 1000.
Или можно предложить схему попроще. Всего имеется 24 одинаковых реакторов. Для каждого наблюдения выбираем случайным образом свой реактор.
Или еще проще: каждому из 24 измерений случайным образом (вне зависимости от уровня фактора) назначаем один из 4 одинаковых реакторов. Каждый реактор участвует в 6 измерениях.
Примечание : Т.к. не всегда представляется возможным иметь в распоряжении множество одинаковых экспериментальных устройств для проведения полностью рандомизированного эксперимента , то в статистике часто используются и другие формы проведения экспериментов, например, блочный рандомизированный эксперимент ( randomized block design ).
Вычисления в MS EXCEL
Итак, предположим, что все измерения проведены в соответствии со схемой полностью рандомизированного эксперимент а. Результаты измерений представлены в таблице ниже (см. файл примера на листе Модель ).
Сначала изучим статистические характеристики набора данных, построив блочную диаграмму .
Из блочной диаграммы видно, что концентрация добавки влияет на прочность нити Y (чем выше концентрация, тем в среднем прочнее нить). Однако, мы пока не можем сделать статистически обоснованный вывод, о том что концентрация добавки влияет на прочность нити . Возможно, различие в средних значениях выборок обусловлено лишь случайностью выборок.
Примечание : Из блочной диаграммы видно, что разброс данных (его отражает дисперсия выборки) имеет примерно одинаковую величину для всех 4-х выборок, что является обязательным условием для корректности применения метода дисперсионного анализа .
Сделаем вспомогательные вычисления по формулам из предыдущего раздела статьи: вычислим средние значения каждой выборки, общее среднее, суммы квадратов SS, степени свободы, MSE, MSA.
Тестовая статистика вычисляется по формуле:
Т.к. тестовая статистика имеет F -распределение ( распределение Фишера ) , то ее значение, вычисленное на основании наблюдений, должно лежать около среднего значения F -распределения с соответствующими степенями свободы .
В нашем случае среднее значение F -распределения с 3 и 20 степенями свободы равно 1,11. Если вычисленное нами значение F 0 «значительно» превосходит это значение, то это является маловероятным событием и у нас есть основания для отклонения нулевой гипотезы .
В нашей задаче F 0 равно 5,3358. «Значительно» это или нет? Для ответа на этот вопрос вычислим вероятность этого события (т.е. вероятность события, что случайная величина F, имеющая распределение Фишера с указанными степенями свободы, примет значение 5,3358 или более). Эта вероятность не высока =0,0072. Этого и следовало ожидать, т.к. 5,3358 значительно больше среднего значения 1,11. В MS EXCEL эту вероятность можно вычислить по формуле:
0,0072 – это так называемое p -значение , т.е. вероятность, что статистика F 0 примет вычисленное значение.
Примечание : Обычно под F 0 понимается как сама случайная величина - тестовая статистика F 0 , так и ее конкретное значение F 0 , вычисленное из условий задачи (исходных данных).
Теперь сравним p -значение с уровнем значимости (обычно 0,05 или 0,01). Если p -значение меньше уровня значимости , то нулевую гипотезу отклоняют.
В начале статьи мы задались вопросом о том, как математически точно определить «значимое» отличие средних значений выборок (чтобы мы могли сделать вывод, что уровни фактора влияют на значение переменной Y). Теперь мы можем утверждать, что средние выборок статистически значимо отличаются, если вычисленное p -значение меньше заданного уровня значимости .
Таким образом, наша модель является полезной и наше предположение о зависимости Y (прочности нити) от фактора (концентрации добавки) является статистически обоснованным.
Примечание : Однофакторный дисперсионный анализ можно также выполнить с помощью надстройки Пакет анализа . Об этом см. в статье здесь .
Метод наименьших квадратов (МНК) основан на минимизации суммы квадратов отклонений выбранной функции от исследуемых данных. В этой статье аппроксимируем имеющиеся данные с помощью экспоненциальной функции.
Метод наименьших квадратов (англ. Ordinary Least Squares , OLS ) является одним из базовых методов регрессионного анализа в части оценки неизвестных параметров регрессионных моделей по выборочным данным. Основная статья про МНК - МНК: Метод Наименьших Квадратов в MS EXCEL .
В этой статье рассмотрена только экспоненциальная зависимость, но ее выводы можно применить и к показательной зависимости, т.к. любую показательную функцию можно свести к экспоненциальной:
y=a*m x =a*(e ln(m) ) x = a*e x*ln(m) =a*e bx , где b= ln(m))
В свою очередь экспоненциальную зависимость y=a*EXP(b*x) при a>0 можно свести к случаю линейной зависимости с помощью замены переменных (см. файл примера ).
После замены переменных Y=ln(y) и A=ln(a) вычисления полностью аналогичны линейному случаю Y=b*x+A. Для нахождения коэффициента a необходимо выполнить обратное преобразование a= EXP(A) .
Примечание : Построить линию тренда по методу наименьших квадратов можно также с помощью инструмента диаграммы Линия тренда ( Экспоненциальная линия тренда ). Поставив в диалоговом окне галочку в поле «показывать уравнение на диаграмме» можно убедиться, что найденные выше параметры совпадают со значениями на диаграмме. Подробнее о диаграммах см. статью Основы построения диаграмм в MS EXCEL .
Следствием замены Y=ln(y) и A=ln(a) являются дополнительные ограничения: a>0 и y>0. При уменьшении х (в сторону больш и х по модулю отрицательных чисел) соответствующее значение y асимптотически стремится к 0. Именно такую линию тренда и строит инструмент диаграммы Линия тренда. Если среди значений y есть отрицательные, то с помощью инструмента Линия тренда экспоненциальную линию тренда построить не удастся.
Чтобы обойти это ограничение используем другое уравнение экспоненциальной зависимости y=a*EXP(b*x)+с, где по прежнему a>0, т.е. при росте х значения y также будут увеличиваться. В качестве с можно взять некую заранее известную нижнюю границу для y , ниже которой у не может опускаться, т.е. у>с. Далее заменой переменных Y=ln(y-c) и A=ln(a) опять сведем задачу к линейному случаю (см. файл примера лист Экспонента2 ).
Если при росте х значения y уменьшаются по экспоненциальной кривой, т.е. a файл примера лист Экспонента3 ).
Функция РОСТ()
Еще одним способом построить линию экспоненциального тренда является использование функции РОСТ() , английское название GROWTH.
Синтаксис функции следующий:
РОСТ( известные_значения_y; [известные_значения_x]; [новые_значения_x]; [конст] )
Для работы функции нужно просто ввести ссылки на массив значений переменной Y (аргумент известные_значения_y ) и на массив значений переменной Х (аргумент известные_значения_x ). Функция рассчитает прогнозные значения Y для Х, указанных в аргументе новые_значения_x . Если требуется, чтобы экспоненциальная кривая y=a*EXP(b*x) имела a=1, т.е. проходила бы через точку (0;1), то необязательный аргумент конст должен быть установлен равным ЛОЖЬ (или 0).
Если среди значений y есть отрицательные, то с помощью функции РОСТ() аппроксимирующую кривую построить не удастся.
Безусловно, использование функции РОСТ() часто удобно, т.к. не требуется делать замену переменных и сводить задачу к линейному случаю.
Наконец, покажем как с помощью функции РОСТ() вычислить коэффициенты уравнения y= a *EXP( b *x).
Примечание : В MS EXCEL имеется специальная функция ЛГРФПРИБЛ() , которая позволяет вычислить коэффициенты уравнения y=a*EXP(b*x). Об этой функции см. ниже.
Чтобы вычислить коэффициент a (значение Y в точке Х=0) используйте формулу =РОСТ(C26:C45;B26:B45;0) . В диапазонах C26:C45 и B26:B45 должны находиться массивы значений переменной Y и X соответственно.
Чтобы вычислить коэффициент b используйте формулу:
= LN(РОСТ(C26:C45;B26:B45;МИН(B26:B45))/ РОСТ(C26:C45;B26:B45;МАКС(B26:B45)))/ (МИН(B26:B45)-МАКС(B26:B45))
Функция ЛГРФПРИБЛ()
Функция ЛГРФПРИБЛ() на основе имеющихся значений переменных Х и Y подбирает методом наименьших квадратов коэффициенты а и m уравнения y= a * m ^x.
Используя свойство степеней a mn =(a m ) n приведем уравнение экспоненциального тренда y= a *EXP( b *x)= a *e b *x = a *(e b ) x к виду y= a * m ^x, сделав замену переменной m= e b =EXP( b ).
Чтобы вычислить коэффициенты уравнения y= a *EXP( b *x) используйте следующие формулы:
= LN(ЛГРФПРИБЛ(C26:C45;B26:B45)) - коэффициент b
= ИНДЕКС(ЛГРФПРИБЛ(C26:C45;B26:B45);;2) - коэффициент a
Примечание : Функция ЛГРФПРИБЛ() , английское название LOGEST, является формулой массива, возвращающей несколько значений . Поэтому, например, для вывода коэффициентов уравнения необходимо выделить 2 ячейки в одной строке, в Строке формул ввести = ЛГРФПРИБЛ(C26:C45;B26:B45) , затем для ввода формулы вместо обычного ENTER нажать CTRL + SHIFT + ENTER .
Функция ЛГРФПРИБЛ() имеет линейный аналог – функцию ЛИНЕЙН() , которая рассмотрена в статье про простую линейную регрессию. Если 4-й аргумент этой функции ( статистика ) установлен ИСТИНА, то ЛГРФПРИБЛ() возвращает регрессионную статистику: стандартные ошибки для оценок коэффициентов регрессии, коэффициент детерминации, суммы квадратов: SSR , SSE и др.
Примечание : Особой нужды в функции ЛГРФПРИБЛ() нет, т.к. с помощью логарифмирования и замены переменной показательную функцию y= a * m ^x можно свести к линейной ln(y)=ln(a)+x*ln(m)=> Y=A+bx. То же справедливо и для экспоненциальной функции y= a *EXP( b *x).
Необходимо выяснить, 1) есть ли существенные различия между этими водоёмами по содержанию стронция в целом и, если есть, 2) какие именно водоемы отличаются друг от друга. Для ответа на первый вопрос выполним дисперсионный анализ при помощи функции aov() :
Как видно из полученных результатов, обследованные водоемы статистически значимо различаются по содержанию стронция. Для того чтобы выяснить, где именно лежат различия, достаточно подать объект M на функцию TukeyHSD() :
В первом столбце полученной таблицы перечислены пары сравниваемых водоемов. Во втором столбце содержатся разности между соответствующими групповыми средними. Третий и четвертый столбцы содержат значения нижнего ( lwr ) и верхнего ( upr ) 95%-ных доверительных пределов для соответствующих разностей. Наконец, в пятом столбце представлены Р-значения для каждой из сравниваемых пар водоемов. Хорошо видно, что существенной разницы в парах " Appletree-Angler ", " Beaver-Angler " и " Beaver-Appletree " нет (Р > 0.05), тогда как во всех остальных случаях разница статистически значима. В целом полученные результаты хорошо согласуются визуальной оценкой различий, которую можно сделать, глядя на приведенную выше диаграмму размахов.
Результаты попарных сравнений групповых средних можно легко изобразить на графике:
На представленном рисунке приведены разности между групповыми средними ( Differences in mean levels of Water ) и их доверительные интервалы, рассчитанные с учетом контроля над групповой вероятностью ошибки ( 95% family-wise confidence level ). В трех случаях доверительные интервалы включают 0, что указывает на отсутствие различий между соответствующими группами (сравните с Р-значениями выше).
Условия применимости критерия Тьюки
Хотя теория того не требует, критерий Тьюки и другие подобные ему методы рекомендуется применять после того, как дисперсионный анализ установил наличие существенной разницы между группами в целом (Zar 1999). В связи с этим критерий Тьюки относится к методам апостериорного анализа (post-hoc analysis).
Критерий Тьюки имеет те же условия применимости, что и собственно дисперсионный анализ, т.е. нормальность распределения данных и (особенно важно!) однородность групповых дисперсий (подробнее см. здесь). Устойчивость к отклонению от этих условий, равно как и статистическая мощность критерия Тьюки, возрастают при одинаковом числе наблюдений во всех сравниваемых группах (Zar 1999).
10 Комментарии
Многие из обсуждаемых в этих статьях методы легко реализуются в R. Примеры здесь:
Для R имеются также специальные пакеты, позволяющие выполнять множественные сравнения при наличии нескольких зависимых переменных:
Наконец, просто чтобы примерно прикинуть, чего можно ожидать от ваших размеров групп, попробуйте сделать расчеты мощности, игнорируя тот факт, что в действительности будет проводиться большое число сравнений для нескольких зависимых переменных, измеренных на одних и тех же животных. См. примеры здесь:
Читайте также: