Once we've created the basic template of our experiment we turn our attention to flow control, or how to guide the subject to different parts of the experiment. In the previous video we created a basic Stroop experiment that went in a predetermined direction: The subject would encounter one Stroop trial, and then another, in exactly the order we had laid out. This was enough to qualify as an experiment, but most studies require more elements than that - randomization and counterbalancing, for example.
In this video we learn how to create these conditions with the List and Procedure objects, which lead the subject into different trials. If we think of the whole experiment as a large house, and of Procedures as rooms, then the List object is a series of signs guiding the subject into this room, and then that one. Once a specified number of rooms have been visited and something seen or done in each of them, the subject then leaves the house.
These Lists have levels, or rows representing individual trials and which Procedures they are in, and attributes, or columns specifying additional qualities about that trial. For example, a given trial may show the word red written in blue ink, have the correct response be the 'f' key, and be classified as "Incongruent". In this case we could specify four attributes: word (red), color (blue), correct response (f), and condition (incongruent). Attributes are similar to variables, in that an attribute can contain a different value depending on the trial. One trial may have a word color as blue, while another may have the word color be red. These attributes can be used in objects and sub-objects, and their values can be logged into E-Prime's output files.
Aside from assigning values to attributes, Lists can specify the trial order as either sequential or random, as well as specify how many times to loop over the list before exiting. This allows us to create a single template object for each condition and to modify it with the attributes specified in the list. For example, instead of making three different Slide objects display three different words, we can create three levels in the List object, create an attribute called "Word", and enter one word for each level: e.g., blue, red, and green. We now need only one template object and a text sub-object with brackets around our attribute name - in this case, [Word]. For a given trial the List will select a level and determine what the value of the Word attribute is. If we have selected a level where it contains the word "blue", then that word will replace [Word] in the Slide. The same method can be applied to any property in the object.
Using Lists and Procedures within those Lists we can stretch our experiment to any length that we want. Furthermore, attributes allow us to create template objects which are then populated with the attributes that we choose. Judicious use of these objects and attributes will save you considerable time and effort.