Форум врачей-аспирантов

Здравствуйте, гость ( Вход | Регистрация )

> Преобразование данных (Box-Cocs transformation), как правильно делать?
Blaid
сообщение 27.08.2012 - 18:56
Сообщение #1





Группа: Пользователи
Сообщений: 36
Регистрация: 27.08.2012
Пользователь №: 24128



Здравствуйте! Приветствую уважаемую общественность!
В связи с необходимостью практического использования у меня возник следующий вопрос.
Есть данные, относящиеся к трём разным контрольным точкам (это различное время (в сутках) после воздействия, скажем 5-е, 10-е и 20-е сутки после воздействия). На каждой контрольной точке было 5 разных групп (при этом каждая точка обладала одними и теми же группами, т.е. набор групп для всех точек был одинаковым), численностью по 5 животных каждая. Т.о. всего насчитывается 75 переменных ("разбитых" по 25 на 3 точки, а каждая точка, в свою очередь, еще на 5 одинаковых (для всех трех точек) групп по 5 животных каждая). В дальнейшем на этих данных хочу сделать двухфакторный дисперсионный анализ без повторений (Two-Way ANOVA), который, как известно (для корректного его выполнения) требует соблюдения ряда требований (допущений). Одно из них - нормальность распределения ВСЕХ сравниваемых групп. Свои данные, распределенные по группам, я проверил на нормальность (критерий Шапиро-Уилка) - данные нескольких групп имеют распределение, отличное от нормального. В связи с этим планирую преобразование по Боксу-Коксу.
Собственно вопрос. Как это преобразование правильно сделать? ОТДЕЛЬНО ПРЕОБРАЗОВЫВАТЬ ТОЛЬКО ТЕ ГРУППЫ, ГДЕ РАСПРЕДЕЛЕНИЕ ОТЛИЧНО ОТ НОРМАЛЬНОГО? ИЛИ ЖЕ НУЖНО ОБЪЕДИНИТЬ ВСЕ ПЕРЕМЕННЫЕ В ЕДИНУЮ ВЫБОРКУ (С N=75) И ТРАНСФОРМИРОВАТЬ ИМЕННО ЕЁ?
Согласно моим дилетантским рассуждениям, если сделать первое (преобразовывать только "ненормальные" группы), то в дальнейшем возникнет проблема неравных дисперсий у преобразованных и не преобразованных групп, а насколько правомерно второе (преобразовывать сразу всю единую группу в 75 вариант) я не знаю.
Насчет неравных дисперсий: да, для дисперсионного анализа важна нормальность распределения остатков ( residuals) дисперсионного анализа, а не данных в самих сравниваемых группах; но помимо нормальности распределения остатков, дисперсионный анализ требует еще и соблюдения равенства дисперсий ВО ВСЕХ сравниваемых группах (для дисп. анализа с повторениями должно соблюдаться еще и условие т.н. сферичности). Для проверки этого условия есть (помимо прочих) критерий Бартлетта (его и собираюсь использовать), для применения которого ВСЕ сравниваемые (по дисперсиям) группы должны быть нормально распределены, поскольку этот критерий чувствителен к отклонениям от нормальности. Хотя ,вероятно, есть более либеральные критерии (устойчивые к отклонениям от нормальности).
Если мой подход неправилен - готов выслушать любые предложения.
Спасибо!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
 
Открыть тему
Ответов
nokh
сообщение 3.09.2012 - 22:32
Сообщение #2





Группа: Пользователи
Сообщений: 1219
Регистрация: 13.01.2008
Из: Челябинск
Пользователь №: 4704



Цитата(Blaid @ 27.08.2012 - 21:56) *
...ОТДЕЛЬНО ПРЕОБРАЗОВЫВАТЬ ТОЛЬКО ТЕ ГРУППЫ, ГДЕ РАСПРЕДЕЛЕНИЕ ОТЛИЧНО ОТ НОРМАЛЬНОГО? ИЛИ ЖЕ НУЖНО ОБЪЕДИНИТЬ ВСЕ ПЕРЕМЕННЫЕ В ЕДИНУЮ ВЫБОРКУ (С N=75) И ТРАНСФОРМИРОВАТЬ ИМЕННО ЕЁ?...

Насколько мне известно, преобразование Бокса-Кокса (Box-Cox) обычно применяют для всей совокупности данных - простой и чисто утилитарный подход, поскольку, как показывает моя практика, в этом случае распределение остатков дисперсионного комплекса действительно становится заметно более симметричным - чего и требовалось добиться. Теория здесь тоже проста: при статистической проверке мы исходим из справдливости нулевой гипотезы, т.е. что между группами нет различий - а значит мы должны пытаться выбрать нормализующее преобразование сразу для всей совокупности данных.

Мне описанный подход не нравится тем, что преобразование Бокса-Кокса - не простое преобразование из семейства степенных преобразований, оно задействует параметр (лямбда) который итерационно находится по выборке. Предположим, что выборки всё-таки отличались по средним значениям. В этом случае лямбда будет искаться не по одному распределению, а по целой смеси распредлений. Т.е. преобразование с этой лямбдой как-то трансформирет данные, но само его значение будет лишено всякого смысла. А это уже очень далеко от той философии, на которой и для которой оно делалось. Поэтому я отказался от простого преобразования Бокса-Кокса "в лоб" и заменил его такой практикой:

(1) Если объёмы выборок достаточно велики, для того чтобы пытаться найти для них преоразующую функцию (порядка 20 и более значений). Делаю преобразование Бокса-Кокса для каждой выборки и выписываю значения лямбда. Далее опираясь на них подбираю наиболее близкое преобразование из простых. Ну, например, можно найти среднее всех лямбд. Если оно близко к 0 - логарифмировать данные, если к 0,5 - извлекать корень, если к 0,25 - брать среднее между логарифмом и корнем. Аналогично в области отрицательных значений. Я описывал этот подход в примере с ковариационным анализом (есть на этом форуме). Или можно делать преобразование с использованием этой усреднённой лямбды - тогда в материале и методах можно даже написать, что использовали преобразование Бокса-Кокса (как именно использовали я опускаю laugh.gif ).

(2) Если объёмы выборок малы - всего несколько значений на ячейку дисперсионного комплекса. Провожу ДА с непреобразованными данными и смотрю распредление остатков. Делаю для него Бокса-Кокса и на основании лямбды выбираю простое преобразование для всего комплекса.

А вообще, преобразование Бокса-Кокса раньше мне казалось очень удачным и крутым. Но на практике всегда возникали какие-то сомнения и сложности выбора (как и у вас). Потом я понял, что с точки зрения более глубокого осмысления природы данных полезнее смотреть не преобразование Бокса-Кокса, а обычное логарифмическое преобразование но с константой: y'=log(y+a). Это хорошо описано у Хальда (Мат. статистика) и у Родионова (Статистика в геологии). К сожалению, мне не встречались программы, в которых было бы такое преобразование с итерационным подбором константы а. А очень жаль, т.к. у этого а есть биологический (или геологический или иной) смысл, тогда как у лямбды - исключительно математический.

Сообщение отредактировал nokh - 3.09.2012 - 22:39
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
100$
сообщение 5.09.2012 - 21:51
Сообщение #3





Группа: Пользователи
Сообщений: 902
Регистрация: 23.08.2010
Пользователь №: 22694



Цитата(nokh @ 3.09.2012 - 22:32) *
Потом я понял, что с точки зрения более глубокого осмысления природы данных полезнее смотреть не преобразование Бокса-Кокса, а обычное логарифмическое преобразование но с константой: y'=log(y+a). Это хорошо описано у Хальда (Мат. статистика) и у Родионова (Статистика в геологии). К сожалению, мне не встречались программы, в которых было бы такое преобразование с итерационным подбором константы а. А очень жаль, т.к. у этого а есть биологический (или геологический или иной) смысл, тогда как у лямбды - исключительно математический.


Nokh, а нельзя выложить сканы этих методик (или их словесное описание), и тогда я запрограммирую это в качестве довеска к Экселю и выложу сюда.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

Сообщений в этой теме


Добавить ответ в эту темуОткрыть тему