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

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

 
Добавить ответ в эту темуОткрыть тему
> Сравнение 3 групп с большой разницей средних
Vitek_22
сообщение 21.09.2024 - 15:02
Сообщение #1





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



Товарищи, подсобите с анализом данных.
3 группы мышей: контроль, больные, леченные. Измерялось пройденное расстояние. Мыши с тяжёлыми двигательными нарушениями, поэтому по сравнению с контролем у них пройденное расстояние отличается на порядок. ANOVA и Tukey апостериорный показывают значимые отличия от контроля. но не между больными и леченными, хотя объективно между ними x2 разница. Интуиция подсказывает, что с такой разницей между средними сравнивать ANOVA некорректно. Но чем тогда и как это объяснить грамотно и какой критерий использовать? Если Стьюдента попарно использовать - выходит норм.

Прикрепленные файлы
Прикрепленный файл  Data1.xlsx ( 9,66 килобайт ) Кол-во скачиваний: 28
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
ИНО
сообщение 22.09.2024 - 11:35
Сообщение #2





Группа: Пользователи
Сообщений: 222
Регистрация: 1.06.2022
Из: Донецк
Пользователь №: 39632



Большая разница средник помехой быть не может, а только лишь наоборот. Но в Вашем случае разница (между второй и третьей группами) не шибко большая и выборки - тоже. Но главная проблема в том, что диаграммы остатков линейной модели говорят о невыполнении всех допущений ДА (ненормальность, гетероскедастичность, "выбросы"). Причем все это настолько выражено, что сомнительно, есть ли вообще какой-то смысл трактовать результаты данного анализа. Какую-нибудь теоретически обоснованную коррекцию модели или трансформацию данных здесь придумать сложно (по крайней мере, мне), так что непараметрика представляется единственным разумным путем. Еще советую подумать: действительно ли необходимы все три сравнения, или хватит двух (между контролем и больными, а также между больными и пролеченными).
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
comisora
сообщение 22.09.2024 - 22:28
Сообщение #3





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



Цитата(Vitek_22 @ 21.09.2024 - 15:02) *
Товарищи, подсобите с анализом данных.


А почему бы не рассмотреть зависимую переменную как неотрицательную величину, пик которой будет ближе к нулю, а хвосты распределения будут говорить о самых дохлых и самых выносливых мышках? Взял три модели: нормальное распределение, логнормальное и гамма. Результаты в листинге. Отношение между контролем и лечением около 2.0-2.5 (1/0.45 - 1/0.41). Много это или мало - решать Вам, но в сравнении со здоровыми это всё очень бледно смотрится.

CODE

library(tidyverse)
library(gamlss)
dat <- readxl::read_excel('YandexDisk/Data1.xlsx') |>
mutate(across(where(is.character), ~as.factor(.))) |>
as.data.frame()
fit1 <- gamlss(value~group, data = dat, family = NO())
fit2 <- gamlss(value~group, data = dat, family = LOGNO2())
fit3 <- gamlss(value~group, data = dat, family = GAF())
df.pred <- data |>
mutate(
normal = predict(fit1, type = 'response', newdata = dat),
lognormal = predict(fit2, type = 'response', newdata = dat),
gamma = predict(fit3, type = 'response', newdata = dat)
)
perf <- performance::compare_performance(fit1,fit2,fit3)
pl <- df.pred |>
pivot_longer(cols = c(normal, lognormal, gamma), values_to = 'fitted') |>
ggplot() +
geom_line(aes(x = n, y = fitted, color = name), linewidth = 1, alpha = 0.75) +
geom_point(aes(x = n, y = value)) +
facet_grid(name~group)
posthoc1 <- pairs(emmeans::emmeans(fit1, ~group))
posthoc2 <- pairs(emmeans::emmeans(fit2, ~group, type = 'response'))
posthoc3 <- pairs(emmeans::emmeans(fit3, ~group, type = 'response'))

perf
Name | Model | AIC (weights) | AICc (weights) | BIC (weights)| Sigma
------------------------------------------------------------------------------
fit1 | gamlss | 58.3 (<.001) | 60.5 (<.001) | 62.9 (<.001) | 1.627
fit2 | gamlss | 42.2 (0.003) | 44.4 (0.006) | 46.8 (0.006) | 1.342
fit3 | gamlss | 30.7 (0.997) | 34.3 (0.994) | 36.4 (0.994) | 1.073

posthoc1
contrast estimate SE df t.ratio p.value
hc - pat 7.738 0.374 19 20.695 <.0001
hc - trt 7.362 0.361 19 20.382 <.0001
pat - trt -0.375 0.374 19 -1.004 0.5834
P value adjustment: tukey method for comparing a family of 3 estimates

posthoc2
contrast ratio SE df null z.ratio p.value
hc / pat 33.680 8.1281 Inf 1 14.573 <.0001
hc / trt 13.782 3.2133 Inf 1 11.252 <.0001
pat / trt 0.409 0.0988 Inf 1 -3.702 0.0006
P value adjustment: tukey method for comparing a family of 3 estimates
Tests are performed on the log scale

posthoc3
contrast ratio SE df null z.ratio p.value
hc / pat 27.87 6.648 Inf 1 13.948 <.0001
hc / trt 12.55 2.025 Inf 1 15.677 <.0001
pat / trt 0.45 0.123 Inf 1 -2.931 0.0095
P value adjustment: tukey method for comparing a family of 3 estimates
Tests are performed on the log scale

Эскизы прикрепленных изображений
Прикрепленное изображение
 

Прикрепленные файлы
Прикрепленный файл  Data1.xlsx ( 10,88 килобайт ) Кол-во скачиваний: 15
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
nokh
сообщение 24.09.2024 - 03:39
Сообщение #4





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



Как уже написал ИНО, требования модели дисперсионного анализа не выполняются: по критерию Левене (или как его по-русски) дисперсии неоднородны, по критерию Шапиро - Уилка остатки распределены ненормально. Прикрепил скриншоты анализа в бесплатном пакете PAST ( https://www.nhm.uio.no/english/research/resources/past/ ), который кстати в ряде моментов умеет больше чем Statistica, хотя сравнивать пакеты сложно, ввиду разных весовых категорий и назначения.

А вот с преобразованиями я бы поработал. Когда нужное преобразование неизвестно исходя из теории, можно использовать степенное преобразование Бокса - Кокса, которое приближает распределение данных к нормальному настолько, насколько позволяют сами данные. Это достигается итерационным подбором параметра лямбда. Преобразование многократно обсуждалось на форуме, но давно это было. Идея здесь такая, что мы можем либо 1) подбирать к нашим данным более подходящую статистическую модель, либо 2) преобразовать наши данные к статистической модели. Чисто философски что лучше 1) или 2) сказать нельзя, поскольку, скажем, если природа данных говорит, что площадь биологического объекта распределена ненормально, а квадратный корень из площади нормально, то естественно работать с квадратным корнем. Или если природа измеряет многие зависящие от скорости процессы скорее логарифмической линейкой, то и нам пользоваться ей естественно (скорость прямой реакции имеет ограничение варьирования слева, т.к. там зона нуля и отрицательных величин, а вправо варьировать можно: получается положительно асимметричное распределение, часто близкое к логнормальному). Для больших любителей непараметрики можно написать, что распространённые ранговые модели может и более универсальны, но не нужно забывать, что там данные тоже преобразуются, причём очень грубо - просто к порядковым местам, рангам. И если мы не видим, как такое преобразование делает статпакет для критерия Манна - Уитни или Краскела - Уоллиса, то это значит просто, что мы не считали критерии вручную и не знаем как работают эти методы. Короче, я за то, чтобы не отказываться от шкалы отношений или интервалов в пользу порядковой шкалы сразу, не попробовав менее грубые преобразования. Апостериорные сравнения по Данн в рамках Краскела - Уоллиса не находят различий между интересующими группами, хотя р близко к 0,10. Проблему можно решить добрав животных, но я против такого, если можно статистикой. Кстати, недавно узнал, что правильно не "по Данну", а по "Данн", т.к. Олив Джин Данн - женщина)) ( https://en.wikipedia.org/wiki/Olive_Jean_Dunn ) и предложила метод в статье "Multiple Comparisons Using Rank Sums" в 1964 г.

Если преобразовать сразу весь набор данных, то проблема с распределением остатков уходит, а с неоднородностью дисперсий нет. Поэтому можно использовать вариант п. Бокса - Кокса с одновременной нормализацией распределений и выравниванием дисперсий. Я умею делать такое только в очень старой программке, которую прикрепил. Она неудобная, копировать и вставлять данные из буфера получается только по одной колонке (есть такая опция в Edit), и забирать в буфер аналогично. Но она подобрала такую лямбду, что однородность дисперсий и нормальность остатков выполняются.

Теперь имеем право трактовать результаты ANOVA и проводить апостериорные сравнения. Различия между интересующими группами статистически значимы: р=0,019 по Тьюки. Лечение работает, хотя до контроля далеко, эффект "бледный" (comisora).

Сообщение отредактировал nokh - 24.09.2024 - 04:10
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
 

Прикрепленные файлы
Прикрепленный файл  Rundom_Box_Cox.zip ( 336,81 килобайт ) Кол-во скачиваний: 15
 
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
ИНО
сообщение 24.09.2024 - 12:13
Сообщение #5





Группа: Пользователи
Сообщений: 222
Регистрация: 1.06.2022
Из: Донецк
Пользователь №: 39632



Цитата(nokh @ 24.09.2024 - 03:39) *
Для больших любителей непараметрики можно написать, что распространённые ранговые модели может и более универсальны, но не нужно забывать, что там данные тоже преобразуются, причём очень грубо - просто к порядковым местам, рангам.

Но заметьте, что при этом и формулировка проверяемой гипотезы значительно изменяется. Отсюда следует, что любое преобразование данных перед применением критерия влечет за собой преобразование гипотез. И если, например, в проверке гипотез о равенстве математических ожиданий квадратных или кубических корней измеряемых величин может иметься глубокий теоретический смысл, то сформулировать гипотезу, проверяемую после преобразования Бокса-Кокса лично я не в силах...
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Vitek_22
сообщение 24.09.2024 - 22:23
Сообщение #6





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



Спасибо за такое развёрнутое объяснение.
Да... пришёл к выводу, что надо где-то курсы статистики пройти, ибо просто использую то, что знаю, не особо разбираясь как оно работает... Но так преподавали, ужасно. Если здесь есть преподаватели - меняйте что-то для медиков/биологов. У нас на лекциях и практике по статистике были совершенно оторванные от реальности примеры, какие-то ёжики в лесу, тарелки супа и т.д.))
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
ИНО
сообщение 25.09.2024 - 01:11
Сообщение #7





Группа: Пользователи
Сообщений: 222
Регистрация: 1.06.2022
Из: Донецк
Пользователь №: 39632



Простые преподаватели бессильны сколь-нибудь существенно поменять программу дисциплины, составляемую в министерстве недалекими и безответственными чиновниками.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Игорь
сообщение 25.09.2024 - 10:29
Сообщение #8





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



Цитата(nokh @ 24.09.2024 - 04:39) *
Когда нужное преобразование неизвестно исходя из теории, можно использовать степенное преобразование Бокса - Кокса, которое приближает распределение данных к нормальному настолько, насколько позволяют сами данные.
Ничего, что после преобразования данные, кроме контроля, стали отрицательными?
Цитата(ИНО @ 25.09.2024 - 02:11) *
Простые преподаватели бессильны сколь-нибудь существенно поменять программу дисциплины, составляемую в министерстве недалекими и безответственными чиновниками.
Программа составляется преподавателем в соответствии с утвержденными учебными планами, одобряется на заседании кафедры и утверждается проректором по учебной работе.

Сообщение отредактировал Игорь - 25.09.2024 - 11:31


Signature
Ebsignasnan prei wissant Deiws ainat! As gijwans! Sta ast stas arwis!
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
ИНО
сообщение 25.09.2024 - 16:44
Сообщение #9





Группа: Пользователи
Сообщений: 222
Регистрация: 1.06.2022
Из: Донецк
Пользователь №: 39632



То уже другая программа, там целая куча документов с названием "програма", я уж забыл как в точности какой называется - два года не преподаю. Но то, что спускают из министерства, кажись, называется "примерная программа", и там все темы занятий и все вопросы, входящие в курс, перечислены. Преподаватель только лишь разбивает по парам в соответствии с количеством часов, выделенных на предмет в конкретном учебном заведении, а затем наращивает на этот скелет мясо в виде конкретных лекций, методичек по лабораторным и прочего. Что-то выбрасывать или свое добавлять, или даже порядок менять при этом нельзя. А скелет оный бывает таковым, что на голову не оденешь. Например, наши республиканские образовательные министервы, ежегодно тупо рандомно тасовали вопросы по темам, та к что в один из годов оказалось, что оплодотворение нужно проходить на месяц раньше, чем мейоз, а из темы о строении клетки выкинут вопрос о ядре.

Естественно, б. м. ответственные (перед студентами и собственно совестью) преподаватели, на такие выкрутасы министерв забивают и читают то, что надо, а не то, что предписано. Но бывают такие ситуации, что всякими проверками так затрахивают, что во избежания выговора, а то и увольнения преподаватель вынужден потакать болезненным фантазиям министерв и читать в точности предписанную хрень в ущерб интересам студентов. Конечно, многое зависит от региональных властей, хочется надеяться что Москве и Питере, все не так ужасно, как в ДНР.

Сообщение отредактировал ИНО - 25.09.2024 - 16:46
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 

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