Quantitative Analysis/ Compare Means
Repeated measurements

How to compare an outcome across repeated measurements or conditions

Repeated-measures ANOVA tests whether an average changes across repeated measurements on the same people, such as at the start, middle, and end of a study. This guide covers sphericity, effect size, follow-up tests, and how to run it in AnalyZ Solutions.

8 min read Compare Means Intermediate

01What repeated-measures ANOVA does

The paired t-test compares two measurements on the same people. Repeated-measures ANOVA applies the same logic to any number of measurements. With two it gives the same answer as the paired t-test, and its advantage shows with three or more. A course might measure students' confidence scores at the start, middle, and end of a term. Each student provides three scores, and those scores are linked because they come from the same student.

The test separates three sources of variation: differences between the time points, differences between students, and leftover variation that neither explains. Because stable differences between students are removed from the comparison, the test can pick up a pattern of change with far fewer students than an independent-groups design would need.

02When to use it

Use it when the outcome is numeric and approximately normal, each subject is measured under two or more conditions or time points, and you want to know whether the average changes across them. Conditions can be time points, or different treatments given to the same people, such as three versions of a message tested on the same participants.

With exactly two measurements, the paired t-test gives the same answer and is the usual choice. If the outcome is ordinal or strongly skewed, use the Friedman test, which is the rank-based counterpart. If subjects are nested in clusters such as schools and measured repeatedly, multilevel regression handles both layers.

03The sphericity assumption

In addition to the usual assumptions, repeated-measures ANOVA assumes sphericity: the differences between every pair of time points should have similar variability. This is easily violated in real data, particularly when time points are far apart, because measurements close together in time tend to correlate more strongly than those far apart.

Mauchly's W is a summary of how well sphericity holds. Values close to 1 indicate the assumption is reasonable. Lower values indicate a possible violation, which makes the F test too generous.

AnalyZ Solutions reports Mauchly's W with a plain note. When it is high, the note says sphericity is likely met. When it is low, the note warns you and the interpretation repeats the warning. The module does not apply a Greenhouse-Geisser correction, so when W is low, read a borderline result with caution or use the Friedman test as a cross-check, since it makes no sphericity assumption.

04Reading the result

The ANOVA table

The table has rows for the condition effect, the subjects, and the error. The row that matters is the condition effect. Its F statistic and significance level tell you whether the average differs across the time points. A significant result says at least one time point differs from another.

Partial eta-squared

Partial eta-squared shows the share of variation, after removing between-subject differences, that the time points explain. Below 1% is negligible, 1% to 6% small, 6% to 14% medium, and above 14% large.

Pairwise follow-ups

When the overall test is significant, and the post-hoc box is ticked, the module runs paired t-tests between every pair of time points with a Bonferroni adjustment. The adjustment multiplies each significance value by the number of comparisons, so the stated level already accounts for the number of pairs.

05How to run it in AnalyZ Solutions

Open Inferential Analysis, choose Compare Means, then Repeated-Measures ANOVA.

  1. Arrange your data in wide format
    Each row is one subject, and each time point or condition is its own column, for example score_time1, score_time2, score_time3.
  2. Select the conditions
    Pick three or more numeric columns in the order you want them compared. The module asks for at least three, so use the paired t-test when you have only two. The order does not change the overall test, but it sets how the descriptives and follow-ups are listed.
  3. Add a subject ID if you have one
    This is optional. If you leave it blank, each row is treated as one subject.
  4. Decide on follow-up comparisons
    The pairwise box is ticked by default and only produces output if the overall test is significant.
  5. Apply a subsample filter if needed
    For example, to analyse one site only.
  6. Click Run
    You receive descriptives per time point, the ANOVA table, the sphericity note, any pairwise comparisons, and a plain-language interpretation.

Only subjects with values for every selected time point are included. At least five complete subjects are required.

Watch for attrition. In a study with several rounds of measurement, respondents lost between rounds drop out of the analysis completely. Report how many subjects remain, and compare the first-round scores of those who stayed with those who left.

06Interpreting the result

The figures below are invented to show the steps, and they follow the results tables in AnalyZ Solutions, with a few columns left out to save space. Suppose 24 students rated their confidence on a 1 to 5 scale at the start, middle, and end of a term.

Condition descriptives
ConditionNMeanSDMedian
Round 1243.1250.9233.227
Round 2243.6860.8153.887
Round 3243.6800.8113.631
ANOVA table
SourceSSdfMSFp-valueSigpartial eta²
Condition4.97622.48817.6798< 0.001***0.435
Subjects43.522231.892
Error6.474460.141
Post-hoc comparisons (Bonferroni)
Condition 1Condition 2Mean diffSEtp (adjusted)Sig
Round 1Round 20.5610.1214.626< 0.001***
Round 1Round 30.5550.1095.089< 0.001***
Round 2Round 3-0.0060.093-0.0651.0000ns

Reading it step by step

  1. Check the sphericity note first
    Mauchly's W is 0.692, below 0.75, so the module warns of a possible violation. The F test may be slightly too generous. The result here is far from borderline, so the conclusion is safe, and a Friedman test on the same columns would confirm it.
  2. Read the overall test
    The F test has a p-value below 0.001 with three stars, so confidence changed across the three rounds, and the change is significant at the 0.1% level.
  3. Judge the size
    Partial eta-squared is 0.435, a large effect. After removing differences between students, the three rounds account for about 43% of the remaining variation.
  4. Find where the change happened
    Confidence rose by 0.56 points from Round 1 to Round 2 and by 0.55 from Round 1 to Round 3, both significant after the Bonferroni adjustment. Rounds 2 and 3 barely differ (0.01 apart, adjusted p of 1.0000).

In plain words

Confidence rose across the term. Most of the increase happened between the first and second rounds, and scores then held steady until the end. The change is large and significant at the 0.1% level. The sphericity warning was noted and did not affect the conclusion. Without a comparison group, the rise cannot be credited to the course itself.

07Common mistakes

Ignoring sphericity. Report the note and be cautious when it signals a problem.

Using long-format data. The module expects one column per time point. Reshape the data if each row holds a single observation.

Reading a significant result as a steady trend. The test says the averages differ, not that they rise or fall in a straight line.

Assuming change was caused by a treatment. Without a comparison group, change across rounds may reflect season, inflation, or other events.

Frequently Asked Questions
How many time points do I need?
The method works with two or more. With exactly two, it matches the paired t-test, with the F value equal to the t value squared and the same significance level. AnalyZ Solutions asks for at least three, so use the paired t-test when you have two. There is no upper limit in the module, but as the number of time points grows, so does the number of pairwise comparisons, and the Bonferroni adjustment becomes more demanding.
What if my data is in long format?
Reshape it so that each subject has one row and each time point has its own column. You can do this in a spreadsheet with a pivot table, or before uploading with your data collection tool's export options.
What is the difference between this test and the Friedman test?
Repeated-measures ANOVA works with the actual scores and assumes approximate normality and sphericity. The Friedman test works with ranks and makes no such assumptions, so it suits ordinal outcomes, small samples, and skewed data. It is less powerful when the parametric assumptions do hold.
What does a low Mauchly's W mean for my results?
It suggests the differences between time points vary unevenly, which can make the F test too eager to find significance. Treat a borderline result with caution, and use the Friedman test as a check on whether the conclusion holds.
Can I compare groups as well as time points?
Not in this module. To test whether change differs between, say, treatment and comparison groups, use multilevel regression, or compare change scores between groups with an independent t-test.

Analyse change over time

Open Compare Means in AnalyZ Solutions. Free to sign up, free to analyze.

Get started
Related Guides