# Create Age Group variable
ageDataTable <- ageDataTable %>%
  mutate(Age_Group = factor(case_when(
    Age >= 10 & Age <= 17 ~ "Adolescence (10-17)",
    Age >= 18 & Age <= 35 ~ "Early Adult (18-35)",
    Age >= 36 & Age <= 49 ~ "Early Middle Age (36-49)",
    Age >= 50 & Age <= 59 ~ "Middle Age (50-59)",
    Age >= 60 & Age <= 69 ~ "Older Middle Age (60-69)",
    Age >= 70 & Age <= 76 ~ "Seniors (70-76)"
  ), levels = c("Adolescence (10-17)", "Early Adult (18-35)", "Early Middle Age (36-49)", 
               "Middle Age (50-59)", "Older Middle Age (60-69)", "Seniors (70-76)"))) %>%
  filter(Age >= 10 & Age <= 76) %>%
  mutate(Task = factor(Task, levels = c("Overall", "Memory Task", "Sorting Task")),
         Task = fct_recode(Task, "UNSW FT" = "Overall"))

gt table

# Calculate mean, standard deviation, and count of participants for each Age_Group and Task
age_group_summary <- ageDataTable %>%
  group_by(Age_Group, Task) %>%
  summarise(Mean = mean(Score, na.rm = TRUE),
            SD = sd(Score, na.rm = TRUE),
            N = n())
## `summarise()` has grouped output by 'Age_Group'. You can override using the
## `.groups` argument.
# Pivot the table wider
age_group_summary_wider <- age_group_summary %>%
  pivot_wider(names_from = Age_Group,
              values_from = c(Mean, SD, N),
              names_sep = "_")

age_group_summary_wider %>%
  gt() %>%
  tab_spanner(label = "Adolescence (10-17)", columns = contains("Adolescence (10-17)")) %>%
  tab_spanner(label = "Early Adult (18-35)", columns = contains("Early Adult (18-35)")) %>%
  tab_spanner(label = "Early Middle Age (36-49)", columns = contains("Early Middle Age (36-49)")) %>%
  tab_spanner(label = "Middle Age (50-59)", columns = contains("Middle Age (50-59)")) %>%
  tab_spanner(label = "Older Middle Age (60-69)", columns = contains("Older Middle Age (60-69)")) %>%
  tab_spanner(label = "Seniors (70-76)", columns = contains("Seniors (70-76)"))
Task Adolescence (10-17) Early Adult (18-35) Early Middle Age (36-49) Middle Age (50-59) Older Middle Age (60-69) Seniors (70-76)
Mean_Adolescence (10-17) SD_Adolescence (10-17) N_Adolescence (10-17) Mean_Early Adult (18-35) SD_Early Adult (18-35) N_Early Adult (18-35) Mean_Early Middle Age (36-49) SD_Early Middle Age (36-49) N_Early Middle Age (36-49) Mean_Middle Age (50-59) SD_Middle Age (50-59) N_Middle Age (50-59) Mean_Older Middle Age (60-69) SD_Older Middle Age (60-69) N_Older Middle Age (60-69) Mean_Seniors (70-76) SD_Seniors (70-76) N_Seniors (70-76)
UNSW FT 59.0873 5.776641 1470 62.84287 6.489126 10163 62.52136 6.388784 6905 61.12893 5.891448 3149 59.81782 5.757233 1139 58.78205 5.051815 169
Memory Task 62.2415 8.366469 1470 65.64818 8.681314 10163 65.26973 8.675535 6905 62.56907 8.301923 3149 60.50044 8.013458 1139 59.45266 7.331691 169
Sorting Task 57.5102 6.828947 1470 61.44027 7.649999 10163 61.14718 7.651214 6905 60.40886 7.273730 3149 59.47651 7.210779 1139 58.44675 6.538756 169