Learning outcomes
- Explain the key idea in your own words.
- Apply the concept to a fictional research scenario.
- Identify assumptions and evidence limitations.
Conceptual lesson
The capstone tests a chain of reasoning from question through data, visualisation, analysis and defensible claims rather than memorisation of a single test. Choose a clearly bounded question about the fictional dataset. Define the unit of observation, the observational group labels and what was genuinely measured.
Specify the primary outcome and analysis in advance. Audit variable types and missingness, compute suitable descriptive statistics, draw at least two labelled figures and use an appropriate comparison or association method. Do not rely on the p-value alone: discuss sampling limitations, uncertainty and alternative explanations.
The deliverable includes a methods-and-data section, results, discussion and limitations, plus a reproducible R script. What matters most is whether the chosen analytical method matches the study design and question.
Worked research example
Possible project question: “How are study hours associated with post-quiz scores among 36 fictional records?” Start with a scatterplot, then consider correlation or regression. Do not claim a causal effect from observational data.
Common reasoning trap
Running many tests and reporting only the significant result as if it had been prespecified misrepresents the evidence.
Independent practice
- Write a 250-word maximum methods/results/discussion report.
- Include at least two plots, one descriptive table, one justified analysis and two limitations.
- Attach an `.R` script so another person can reproduce the results from the supplied data.
Explain your reasoning, not only the number.
Optional R lab
Save the synthetic CSV in the working folder before running the script. Base R only.
# 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.
# Capstone starter: edit the research question and planned analysis.
stopifnot(nrow(d)==36)
summary(d$score_post)
table(d$group)
plot(d$study_hours, d$score_post, pch=19,
xlab="Study hours", ylab="Post score")
boxplot(score_post ~ group, data=d, ylab="Post score")
cor.test(d$study_hours, d$score_post)
# Write interpretation, uncertainty, and limitations in your report.Stretch: mathematical track
Critically assess a second research question for multiple-testing, causal and sampling limitations.
Exit ticket
Write one defensible claim and one limitation from this week's example.
Student workbook and self-check
Four first-year written problems, 20-mark rubric and a four-question self-check.