Как выполнить повторное измерение ANOVA с двоичными данными на R

#r #binary #anova

#r #двоичный #anova

Вопрос:

Я смотрю на выживаемость личинок асцидий в течение трех недель, и если размер отстойника или чашки Петри, в которой они находятся (поскольку в каждой чашке Петри содержится случайное число асцидий) или пробег, к которому они принадлежат, оказывают какое-либо существенное влияние на их выживание. Я не ожидаю какого-либо значения для чашки Петри и запуска, однако мои профессора все еще хотят, чтобы я включил их в свой ANOVA, чтобы иметь возможность статистически исключить их позже. Вот все кодирование, которое я пытался запустить:

  Ascidians <- Ascidians %>%
      gather(key = "Week", value = "Survival", Survival.W1, 
         Survival.W2, Survival.W3) %>%
  convert_as_factor(Week)

Ascidians %>%
  group_by(Settler.Size, Week) %>%
  shapiro_test(Survival)

ggqqplot(Ascidians, "Survival", ggtheme = theme_bw()) 
  facet_grid(Week~Settler.Size, labeller= "label_both")

res.aov <- anova_test(data = Ascidians, dv = Survival,
                      wid = Run, within = c(Settler.Size, Week))

get_anova_table(res.aov)
 

Однако, когда я запускаю shapiro_test, я получаю это сообщение об ошибке:

 Error: Problem with `mutate()` input `data`.
x Problem with `mutate()` input `data`.
x sample size must be between 3 and 5000
i Input `data` is `map(.data$data, .f, ...)`.
i Input `data` is `map(.data$data, .f, ...)`.
 

И это не позволит мне запустить,

 res.aov <- anova_test(data = Ascidians, dv = Survival,
                  wid = Run, within = c(Settler.Size, Week))
 

Я попытался сделать это как односторонний способ для начала, а затем продолжать добавлять переменную, пока не добавлю все переменные, однако это не позволит мне запускать двусторонний повторяющийся ANOVA, а тем более трехсторонний повторяющийся ANOVA
Я думаю, это связано с тем, что данные являются двоичными?
Любая помощь будет принята с благодарностью, спасибо!!

Мои данные

     Run Petri.dish Settler.Size Survival.W1 Survival.W2 Survival.W3
1   1          1     20130.03           0           0           0
2   1          1     23694.39           1           1           1
3   1          2     19421.20           1           1           1
4   1          2     25820.88           0           0           0
5   1          2     21432.59           0           0           0
6   1          2     18605.33           0           0           0
 

Комментарии:

1. Пожалуйста, включите все неосновные R-пакеты, которые вы используете. Из какого пакета эта функция ggqqplot ?

2. Это все пакеты, которые я использовал библиотека (tidyverse) библиотека (ggpubr) библиотека (ggplot2) библиотека (rstatix) библиотека (reshape2)

3. Я не уверен, что ANOVA является подходящим методом, который вы используете здесь. Если я могу понять гипотезу, на мой взгляд, анализ времени по событиям более уместен ?!

4. Привет @TarJae, я никогда не слышал об анализе времени по событиям, позволит ли мне проверять значимость трех зависимых переменных одновременно? (размер отстойника, неделя и выживаемость). Спасибо!

5. Привет. Если вы хотите исследовать влияние (размера отстойника или недели или любой другой переменной) на выживаемость ваших образцов, тогда вам следует выполнить анализ выживаемости (= анализ времени до события).). Вы измеряете выживаемость ваших образцов в 3 определенные моменты времени, это позволяет квалифицировать ваши данные для anova с повторным измерением. Но вы заявляете: «Я смотрю на выживаемость личинок асцидий в течение трех недель и ….». В данном случае для меня это анализ выживаемости. Но просто выполните оба и сравните результаты. Другой вопрос: это ваши полные данные или только первые 6 образцов?

Ответ №1:

Я думаю, вы можете захотеть сгруппировать только с Week помощью, а не Settler.Size с тех пор, как группировка по Settler.Size даст вам только одну строку в каждой группе.

 library(dplyr)
library(rstatix)

Ascidians %>% group_by(Week) %>% shapiro_test(Survival)
 

Комментарии:

1. Спасибо! Это позволяет мне запускать shapiro_test. Тем не менее, это все равно не позволит мне запустить двустороннее повторное измерение ANOVA … есть какие-либо подсказки о том, как это исправить? Еще раз спасибо!

2. @MarineBioStudent Это сработает, если вы это сделаете anova_test(data = Ascidians, dv = Survival,wid = Run, within = Week)

3. Я попытался запустить его, но когда я его запускаю, я получаю эту ошибку (я думаю, из-за двоичных данных в survival): Error: Each row of output must be identified by a unique combination of keys. Keys are shared for 591 rows