It's been too long since I have taken a stats course, and I'm struggling to figure out what the proper test is for this experiment I'm designing.

  • There are two conditions: A and B
  • There is one continuous dependent variable that is measured as the outcome of each trial (each trial is of condition A or condition B)
  • There are approx. 30 subjects
  • Each subject will do 5 trials with condition A, and 5 trials with condition B
  • The order in which the subject does the trials is randomized
  • I'm trying to show that the value of the dependent variable is significantly higher with condition A than it is with condition B

The main issue for me is trying to figure out how to handle each subject doing each condition multiple times. Would this be some sort of one-way ANOVA with blocking by subject? Or maybe repeated measures within subjects? Any tips would be great!

Secondary question: for whatever the correct answer to the above is, what would be the closest equivalent non-parametric test?

  • 1
    $\begingroup$ Could you please add some information about the number of participants. Is many 20, 50, 100, or even more? This will impact the methods available to you. $\endgroup$ Oct 8, 2015 at 21:41
  • $\begingroup$ @MarcusMorrisey Sorry about that, OP is updated (roughly 30 subjects) $\endgroup$
    – Jordan
    Oct 8, 2015 at 21:51

1 Answer 1


There are a number of approaches you could adopt. Based on your sample size I am proceeding on the assumption that your data will be normally or near-normally distributed. If such is not the case, you may have to change your approach.

One method would be to simply average each participants responses by condition then perform a repeated measures t-test on those averages. This has the advantage of simplicity and may be sufficient if the expected effect size is large. However, you are sacrificing power by averaging. Mann-Whitney's U test would be the non-parametric equivalent.

A more complicated, and more powerful, approach would be to use a hierarchical model, treating participant as a random factor. The following model would specify a random intercept for each participant using the R package lme4. Very roughly you can think of this as allowing the extremeness of each trial to be compared to an individual's own average value, but assuming equal slopes,i.e., change between trials, for all participants.

lmer(dependentVariable ~ FactorAB + (1|participant), data=yourData)

This functionality is available on other software platforms, I'm just less familiar with the process.

If the assumptions I've mentioned are reasonable in your case, either one should work for you.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.