Date: October 8, 2026
How good is this model, actually?
Note
This is the JAMOVI version. Same data, same numbers as the R deck. JAMOVI is genuinely better than base R at one thing today — comparing nested models — so stick around for Part 3.
400 adolescents, measured on sleep, stress, and mood.
☰ Menu → Open → Browse →
asap_data.csv
Analyses → Exploration → Descriptives ·
T1_SleepDur,T1_PeerStress,T1_AcadStress,T1_Dep
| Variable | N | Mean | SD |
|---|---|---|---|
T1_SleepDur (hours) |
400 | 9.45 | 1.00 |
T1_PeerStress |
400 | 7.93 | 1.77 |
T1_AcadStress |
400 | 5.02 | 1.83 |
T1_Dep |
400 | 9.84 | 2.15 |
Research question: Does how long adolescents sleep predict depressive symptoms?
Suppose you had no predictor at all. What is your best guess for anyone’s depression score?
The mean: 9.84. That’s it. That’s the model.
How wrong is that model? Add up every squared miss:
\[SS_{total} = \sum(Y_i - \bar{Y})^2 = 1840.5\]
This is the total variability we are trying to account for. Everything from here is about shrinking it.
Analyses → Regression → Linear Regression
Dependent Variable:
T1_Dep· Covariates:T1_SleepDurModel Fit: tick R², Adjusted R², RMSE, Overall Model Test
Model Coefficients: tick Omnibus ANOVA Test
| Predictor | Estimate | SE | t | p |
|---|---|---|---|---|
| Intercept | 15.031 | 0.985 | 15.26 | < .001 |
| T1_SleepDur | −0.549 | 0.104 | −5.30 | < .001 |
Each additional hour of sleep is associated with 0.55 fewer points of depression. But today’s question is: how much better is this line than the mean?
For any single adolescent:
\[\underbrace{Y_i - \bar{Y}}_{\text{total}} = \underbrace{\hat{Y_i} - \bar{Y}}_{\text{model}} + \underbrace{Y_i - \hat{Y_i}}_{\text{residual}}\]
Square them, add them up across all 400 people, and the same decomposition holds:
\[SS_{total} = SS_{model} + SS_{residual}\]
The Omnibus ANOVA Test table you just ticked:
| Term | Sum of Squares | df | Mean Square | F | p |
|---|---|---|---|---|---|
| T1_SleepDur | 121.2 | 1 | 121.2 | 28.05 | < .001 |
| Residuals | 1719.4 | 398 | 4.32 |
\[R^2 = \frac{SS_{model}}{SS_{total}} = \frac{121.2}{1840.5} = .066\]
Model Fit Measures
| R | R² | Adjusted R² | RMSE |
|---|---|---|---|
| 0.257 | 0.0658 | 0.0635 | 2.073 |
6.6% of the variability in depression is accounted for by sleep duration.
Which means 93.4% is not. Both halves of that sentence are the finding.
R² = .066
Sleep duration tells us very little about any individual adolescent’s depression.
p < .001
With n = 400, we are confident the slope is not zero.
Important
These are answers to different questions. “Is there an effect?” and “how much does it explain?” are not the same, and a p-value only answers the first.
This is normal in psychology. Behavior has many causes; one predictor rarely owns much of the variance.
“.066” does not tell you whether this model is useful for a clinician.
RMSE does. It is roughly the size of a typical miss, in the units of the outcome:
\[RMSE \approx \sqrt{\frac{SS_{residual}}{n}} = \sqrt{\frac{1719.4}{400}} = 2.07\]
Note
JAMOVI’s RMSE divides by n; R’s “residual standard error” divides by the degrees of freedom (2.08 here). Same idea, trivially different arithmetic — don’t let the two labels confuse you.
We bought ourselves about 0.08 points of accuracy.
Tip
That is the honest way to describe a small R² to a non-statistician: not “6.6% of variance,” which means nothing to most people, but “knowing how long a teenager slept barely improves our guess about their mood.”
\[F = \frac{MS_{model}}{MS_{residual}} = \frac{121.2}{4.32} = 28.05\]
Overall Model Test
| F | df1 | df2 | p |
|---|---|---|---|
| 28.05 | 1 | 398 | < .001 |
Linear Regression → Model Builder
Block 1:
T1_SleepDurClick + Add New Block → Block 2:
T1_PeerStress
Now tick Model Comparisons under Model Fit.
JAMOVI will fit both models and test the difference between them — which is exactly the question “did peer stress earn its place?”
Model Comparisons
| Comparison | ΔR² | F | df1 | df2 | p |
|---|---|---|---|---|---|
| Model 1 − Model 2 | 0.027 | 11.78 | 1 | 397 | < .001 |
Model Fit Measures
| Model | R² | Adjusted R² | RMSE |
|---|---|---|---|
| 1. Sleep only | .0658 | .0635 | 2.073 |
| 2. + peer stress | .0928 | .0882 | 2.043 |
+ Add New Block → Block 3:
T1_AcadStress
| Predictor | Estimate | SE | t | p |
|---|---|---|---|---|
| T1_AcadStress | −0.007 | 0.057 | −0.12 | 0.902 |
Academic stress is as close to nothing as you will ever see.
| Model | R² | Adjusted R² | RMSE |
|---|---|---|---|
| 1. Sleep only | .0658 | .0635 | 2.073 |
| 2. + peer stress | .0928 | .0882 | 2.043 |
| 3. + academic stress | .0928 | .0859 ⬇️ | 2.043 |
Adding a predictor gives the model one more knob to turn. At worst the coefficient sits near zero and fit stays the same; usually it catches a sliver of noise and R² ticks up.
\[R^2_{adj} = 1 - (1 - R^2)\frac{n - 1}{n - k - 1}\]
Every predictor \(k\) costs you something. Adjusted R² only rises if the new variable earns its place.
Important
R² is not a model-selection tool. The biggest R² always belongs to the model with the most predictors. Week 11 gives us honest ways to compare models — and JAMOVI’s Model Comparisons table is the first one.
| What you want | JAMOVI | R |
|---|---|---|
| R², adjusted R² | Model Fit Measures | glance(fit) |
| Typical miss | Model Fit → RMSE | glance(fit)$sigma |
| Sums of squares | Model Coefficients → Omnibus ANOVA Test | anova(fit) |
| Overall F | Model Fit → Overall Model Test | glance(fit)$statistic |
| Compare nested models | Model Builder blocks + Model Comparisons | anova(fit1, fit2) |
| ΔR² | Model Comparisons table | subtract two glance() rows |
We spent all day computing \(SS_{residual}\). Let’s actually look at the residuals instead of just squaring them.
Linear Regression → Assumption Checks
Tick Residual plots
JAMOVI gives you residuals against fitted values (plus a Q-Q plot). For the ASAP model it is a shapeless cloud centered on zero — which is what “nothing obviously wrong” looks like.
Note
That is the entire diagnostic toolkit for now: tick the box, look for a pattern. Week 10 turns each of these into a named assumption with a proper test. For the midterm, the glance is enough.
Tip
Week 7 Exercises · ~45 min · Pairs
Spotify data: 952 popular songs, with danceability, energy, valence, acousticness — and streams.
Finish these at the bottom of your activity file:
📋 Lab 8 — How Good Is This Model?, due Tuesday 10/13 at 11:59pm
Warning
10/13 is during Fall Break. The lab is submitted online as usual — nothing to hand in physically, and no class that Monday or Tuesday.
📖 Chapter 10 — ROS (for next week’s multiple regression)
📂 Midterm Project — posted today
The Midterm Project is up on the website now. Due Tuesday, 10/27 at 11:59pm. It is worth 200 points (20% of your grade).
No lab is due in Weeks 9 or 10, so that time is yours for the project.