# ── TABLE 1 ──────────────────────────────────────────────────────────────────
hrs_final %>%
mutate(
r3vigact = as.numeric(r3vigact),
ragender = as.numeric(ragender),
raracem = as.numeric(raracem)
) %>%
filter(!is.na(r3vigact)) %>%
group_by(r3vigact) %>%
summarise(
N = n(),
# Demographics
Age_mean = round(mean(r3agey_e, na.rm = TRUE), 1),
Age_sd = round(sd(r3agey_e, na.rm = TRUE), 1),
Pct_female = round(mean(ragender == 2, na.rm = TRUE) * 100, 1),
Pct_white = round(mean(raracem == 1, na.rm = TRUE) * 100, 1),
Pct_black = round(mean(raracem == 2, na.rm = TRUE) * 100, 1),
Pct_hispanic = round(mean(raracem == 3, na.rm = TRUE) * 100, 1),
Pct_other = round(mean(raracem == 4, na.rm = TRUE) * 100, 1),
Educ_mean = round(mean(as.numeric(raedyrs), na.rm = TRUE), 1),
Educ_sd = round(sd(as.numeric(raedyrs), na.rm = TRUE), 1),
# Baseline health
Cog_mean = round(mean(r3cogtot, na.rm = TRUE), 1),
Cog_sd = round(sd(r3cogtot, na.rm = TRUE), 1),
Pct_htn = round(mean(as.numeric(r3hibpe) == 1, na.rm = TRUE) * 100, 1),
Pct_diab = round(mean(as.numeric(r3diabe) == 1, na.rm = TRUE) * 100, 1),
Pct_heart = round(mean(as.numeric(r3hearte) == 1, na.rm = TRUE) * 100, 1),
Pct_stroke = round(mean(as.numeric(r3stroke) == 1, na.rm = TRUE) * 100, 1),
BMI_mean = round(mean(r3bmi, na.rm = TRUE), 1),
BMI_sd = round(sd(r3bmi, na.rm = TRUE), 1),
CESD_mean = round(mean(r3cesd, na.rm = TRUE), 1),
CESD_sd = round(sd(r3cesd, na.rm = TRUE), 1)
) %>%
t() %>%
as.data.frame()