Сейчас я работаю над магистерской диссертацией и планирую запустить статистику с SigmaPlot. Однако, проведя некоторое время со своими данными, я пришел к выводу, что SigmaPlot может не подходить для моей проблемы (я могу ошибаться), поэтому я начал свои первые попытки в R, что не совсем облегчило задачу.
План состоял в том, чтобы провести простую ДВУХКОМПОНЕНТНУЮ по моим данным, которая основана на 3 разных белках и 8 разных обработках этих, поэтому два моих фактора - белки и лечение Я проверил на нормальность, используя оба
> shapiro.test(time)
и
> ks.test(time, "norm", mean=mean(time), sd=sqrt(var(time)))
В обоих случаях (возможно, не удивительно) я получил ненормальный дистрибутив.
Который оставил мне первые вопросы о том, какой тест использовать для равенства дисперсий. Я придумал
> chisq.test(time)
и результат был в том, что у меня нет равных в моих данных.
Я пробовал разные преобразования данных (журнал, центр, стандартизация), и все это не решало моих проблем с отклонениями.
Теперь я в растерянности, как проводить ANOVA для проверки того, какие белки и какие методы лечения значительно отличаются друг от друга. Я нашел кое-что о тесте Крускала-Валиса, но только для одного фактора (?). Я также нашел кое-что о ранжировании или рандомизации, но пока не понял, как реализовать эти методы в R.
У кого-нибудь есть предложение, что мне делать?
Изменить: спасибо за ваши ответы, я немного ошеломлен чтением (кажется, что он получает все больше и больше, а не меньше), но я, конечно, буду продолжать.
Вот пример моих данных, как было предложено (мне очень жаль формат, я не мог найти другое решение или место для размещения файла. Я все еще новичок во всем этом.):
protein treatment time
A con 2329.0
A HY 1072.0
A CL1 4435.0
A CL2 2971.0
A CL1-HY sim 823.5
A CL2-HY sim 491.5
A CL1+HY mix 2510.5
A CL2+HY mix 2484.5
A con 2454.0
A HY 1180.5
A CL1 3249.7
A CL2 2106.7
A CL1-HY sim 993.0
A CL2-HY sim 817.5
A CL1+HY mix 1981.0
A CL2+HY mix 2687.5
B con 1482.0
B HY 2084.7
B CL1 1498.0
B CL2 1258.5
B CL1-HY sim 1795.7
B CL2-HY sim 1804.5
B CL1+HY mix 1633.0
B CL2+HY mix 1416.3
B con 1339.0
B HY 2119.0
B CL1 1093.3
B CL2 1026.5
B CL1-HY sim 2315.5
B CL2-HY sim 2048.5
B CL1+HY mix 1465.0
B CL2+HY mix 2334.5
C con 1614.8
C HY 1525.5
C CL1 426.3
C CL2 1192.0
C CL1-HY sim 1546.0
C CL2-HY sim 874.5
C CL1+HY mix 1386.0
C CL2+HY mix 364.5
C con 1907.5
C HY 1152.5
C CL1 639.7
C CL2 1306.5
C CL1-HY sim 1515.0
C CL2-HY sim 1251.0
C CL1+HY mix 1350.5
C CL2+HY mix 1230.5
?bartlett.test
)Ответы:
Это может быть больше комментарий, чем ответ, но он не подходит как комментарий. Возможно, мы сможем вам здесь помочь, но это может занять несколько итераций; нам нужно больше информации.
Во-первых, какова ваша переменная ответа?
Во-вторых, обратите внимание, что предельное распределение вашего ответа не обязательно должно быть нормальным, скорее должно быть распределение, зависящее от модели (т. Е. Остатки) - не ясно, что вы изучили свои остатки. Кроме того, нормальность является наименее важным предположением линейной модели (например, ANOVA); остатки, возможно, не должны быть совершенно нормальными. Испытания нормальности обычно не стоит (см здесь для обсуждения CV), участки гораздо лучше. Я бы попробовал qq-график ваших остатков. В
R
этом делается сqqnorm()
, или попробоватьqqPlot()
вcar
пакет. Стоит также рассмотреть манеру, в которой остаточные значения являются ненормальными: асимметрия является более разрушительной, чем избыточный эксцесс, особенно если перекосы чередуются в разных группах.Если действительно есть проблема, о которой стоит беспокоиться, трансформация - это хорошая стратегия. Ведение журнала ваших необработанных данных является одним из вариантов, но не единственным. Обратите внимание, что центрирование и стандартизация не являются в этом смысле преобразованиями. Вы хотите взглянуть на семейство силовых трансформаций Box & Cox . И помните, результат не должен быть совершенно нормальным, достаточно хорошим.
Далее, я не слежу за тем, как вы используете критерий хи-квадрат для однородности дисперсии, хотя он может быть совершенно нормальным. Я хотел бы предложить вам использовать тест Левена (использовать
leveneTest()
вcar
). Гетерогенность является более разрушительной, чем ненормальность, но ANOVA является довольно устойчивой, если гетерогенность незначительна. Стандартное эмпирическое правило гласит, что наибольшая групповая дисперсия может быть в четыре раза меньше самой маленькой, не создавая серьезных проблем. Хорошая трансформация должна также учитывать неоднородность.Если этих стратегий недостаточно, я бы, вероятно, изучил бы устойчивую регрессию, прежде чем пытаться использовать непараметрический подход.
Если вы сможете отредактировать свой вопрос и рассказать больше о своих данных, возможно, я смогу обновить его, чтобы предоставить более конкретную информацию.
источник
( примечание: этот ответ был опубликован до того, как вопрос был перенесен и объединен с SO, поэтому к вопросу были добавлены подробности, которые здесь не рассматриваются. Многие из них рассматриваются в комментариях и ответе @gung).
Есть много разных подходов, и этот вопрос был рассмотрен в другом месте на этом сайте. Вот список некоторых подходов, со ссылками на другие вопросы на сайте и некоторыми ссылками.
adonis
функция в пакете R Veganисточник
adonis
вVegan
пакете R / David 16 мая в 16:20adonis
кажется, работает даже с одномерными DVS Однако у меня такое ощущение, что он использует что-то вроде суммы квадратов типа 1, так как я получаю сообщение,Terms added sequentially (first to last)
когда запускаю его. Вы использовали это или можете сказать что-нибудь об этом? - Хенрик 16 мая в 17:03