# install.packages('Superpower') # install.packages('lme4') # superpower basiert u.a. auf lme4 library(Superpower) #### between#### # Definiere die Bedingungen des 2x2 Designs between_design <- ANOVA_design( design = "2b*2b", # 2x2 Between-Subjects Design n = 30, # Anzahl der Probanden (Beobachtungen) pro Zelle (für plot_power irrelevant) mu = c(0, 0.5, 0.2, 1.2), # Erwartete Mittelwerte des Outcomes für die 2x2 Zellen sd = 1, # Erwartete Gemeinsame Standardabweichung im Outcome label_list = list(Darbietung = c("visuell", "auditiv"), # Bezeichnung der Faktoren und -stufen Zeitpunkt = c("morgens", "abends"))) # kann man auch mit Plot überprüfen # Reihenfolge der labels passend zu mu: # visuell - morgens 0 # visuell - abends 0.5 # auditiv - morgens 0.2 # auditiv - abends 1.2 # Power Curve simulieren um n pro Zelle zu bestimmen plot_between <- plot_power(between_design, alpha_level = 0.05, min_n = 10, max_n = 100, desired_power = 90, plot = TRUE) plot_between # Power für alle Tests für ein bestimmtes n # Definiere das ANOVA_design für n = 53 pro Zelle between_design <- ANOVA_design( design = "2b*2b", n = 53, # Anzahl der Probanden (Beobachtungen) pro Zelle mu = c(0, 0.5, 0.2, 1.2), sd = 1, label_list = list(Darbietung = c("visuell", "auditiv"), Zeitpunkt = c("morgens", "abends"))) # Simulationsparameter nsim <- 1000 # Anzahl der Simulationsdurchgänge # Durchführung der Simulation simulation_results_between <- ANOVA_power( between_design, alpha_level = 0.05, # (post-hoc Tests noch ohne Alphafehlerkorrektur!) nsim = nsim) # Ergebnisse anzeigen print(simulation_results_between) #### mixed #### mixed_design <- ANOVA_design( design = "2b*2w", # 2x2 Mixed Design n = 53, # Anzahl der Probanden (Beobachtungen) pro Zelle mu = c(0, 0.5, 0.2, 1.2), # Erwartete Mittelwerte des Outcomes für die 2x2 Zellen sd = 1, # Erwartete Gemeinsame Standardabweichung im Outcome r = 0.5, # Korrelation im Outcome zwischen den Stufen des Within-Faktors, 0 = between design label_list = list(Darbietung = c("visuell", "auditiv"), # Bezeichnung der Faktoren und -stufen Zeitpunkt = c("morgens", "abends"))) # Power Curve simulieren um n pro Zelle zu bestimmen plot_mixed <- plot_power(mixed_design, alpha_level = 0.05, min_n = 10, max_n = 100, desired_power = 90, plot = TRUE) plot_mixed # Durchführung der Simulation für n = 53 pro Zelle (wie oben bei between, zur Veranschaulichung) simulation_results_mixed <- ANOVA_power( mixed_design, nsim = nsim) # Ergebnisse anzeigen print(simulation_results_mixed) # zum Vergleich: print(simulation_results_between) ## Mixed Design mit höherer Korrelation der Within Stufen ## # für n = 53 pro Zelle, r = 0.9 mixed_design_r09 <- ANOVA_design( design = "2b*2w", n = 53, mu = c(0, 0.5, 0.2, 1.2), sd = 1, r = 0.9, # Korrelation hier 0.9 statt 0.5 label_list = list(Darbietung = c("visuell", "auditiv"), Zeitpunkt = c("morgens", "abends"))) # Durchführung der Simulation simulation_results_mixed_r09 <- ANOVA_power( mixed_design_r09, nsim = nsim) # Ergebnisse anzeigen print(simulation_results_mixed_r09) # zum Vergleich: print(simulation_results_mixed) #### within #### within_design <- ANOVA_design( design = "4w", # 1 Faktor mit 4 Messzeitpunkten (Within) n = 30, # Anzahl der Probanden pro Zelle mu = c(0, 0.5, 0.2, 1.2), # Erwartete Mittelwerte des Outcomes für die 1x4 Zellen sd = 1, # Erwartete Gemeinsame Standardabweichung im Outcome r = 0.5, # Korrelation im Outcome zwischen den Stufen des Within-Faktors label_list = list(Training = c("T1", "T2", "T3", "T4"))) # Bezeichnung der Faktoren und -stufen # Power Curve simulieren um n pro Zelle zu bestimmen plot_within <- plot_power(within_design, alpha_level = 0.05, min_n = 10, max_n = 100, desired_power = 90, plot = TRUE) plot_within # für n = 32 pro Zelle (Hier: Messzeitpunkt), r = 0.5 within_design <- ANOVA_design( design = "4w", n = 32, # Anzahl der Probanden pro Zelle jetzt herab gesetzt zur Veranschaulichung mu = c(0, 0.5, 0.2, 1.2), sd = 1, r = 0.5, label_list = list(Training = c("T1", "T2", "T3", "T4"))) # Durchführung der Simulation simulation_results_within <- ANOVA_power( within_design, nsim = nsim) # Ergebnisse anzeigen print(simulation_results_within)