# Statistics Lab / ferdo — synthetic data (no real student records)
# Save stats_synthetic.csv in your working directory.
d <- read.csv("stats_synthetic.csv", stringsAsFactors = TRUE)
stopifnot(nrow(d) == 36, all(c("score_pre","score_post","group") %in% names(d)))
# Groups are observational labels: differences cannot establish a treatment effect.

boxplot(score_post ~ group, data=d, ylab="Post-quiz score")
fit <- aov(score_post ~ group, data=d)
summary(fit)
TukeyHSD(fit)
oneway.test(score_post ~ group, data=d) # Welch ANOVA
