experimentator icon indicating copy to clipboard operation
experimentator copied to clipboard

Distributing trials across participants

Open fredcallaway opened this issue 7 years ago • 1 comments

Basically, I want to do a latin square for the stimuli assignment, not the ordering.

For example, say I have the design:

  - name: participant
  - name: trial
    ivs:
      layout: [A, B]
      goes_in: [1, 0]

By default this gives me one participant with 4 trials:

Subj 1: A1 A0 B1 B0

But let's say I want to impose a restriction that each participant only see each iv value once. That is, I want (ignoring ordering for now):

Subj1: A1 B0
Subj2: A0 B1

I was planning to implement this myself, but I figured I'd check in with you first. I think we can modify design_matrix to allow a 3d array, where the extra (first) dimension will define the different possible design matrices that a subject could be assigned to. Assignment will be done by adding an extra iv to participant, similar to how counterbalancing is implemented.

  - name: participant
  - name: trial
    ivs:
      layout: [A, B]
      hit: [0, 1]
    desgin_matrix:
      -
        - [1, 1]
        - [0, 0]
      -
        - [0, 1]
        - [1, 0]

Step 2 will be to implement common choices of 3d design matrices, such as the latin squares in my example. I think an interface similar to the one to Ordering makes sense. I wrote up the basic logic here.

P.S. Awesome project by the way!

fredcallaway avatar Oct 20 '16 18:10 fredcallaway

I think this can be accomplished with what I ended up calling a "heterogeneous experiment structure" which allows you to associate an IV with a design. That said, it is kind of clunky and nested design matrices might be a better interface. Feel free to have a go at it!

hsharrison avatar Oct 24 '16 04:10 hsharrison