Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

Psycholinguistic experiment

edited November 2016 in OpenSesame

Hello!
I am new to the forum and to Open Sesame in general. I would like to create an experiment where I measure reading time (self-paced reading) and accuracy (multiple choice task) of simple sentences.
For example : The lawyer
handling the divorce
of my parents
is a shark

I would like to show each phrase until the subject presses a key (which supposedly measures understanding). The phrase "The lawyer" is thus followed by the next phrase "handling the divorce" etc, but they all stay on the screen at the end.

After this phase, I would like to have three propositions appearing on the screen, such as:
a) The lawyer is a big fish
b) The lawyer is ruthless
c) The lawyer likes to swim

and then measure the subjects accuracy. The variable "sentence" has three values =
1. Conventional metaphor = 8 sentences
2. New metaphor = 8 sentences
3. Idiom = 8 sentences

I have two questions:
In order to show the sentences sequentially, do I create 4 sketchpads per sentence with the duration "keypress", meaning 4x24 sentences?
How do I tell Open Sesame that I want each sentence to be followed by the multiple choice related to the sentence?

Thank you for your attention!
Cat

Comments

  • Hi Cat,

    do I create 4 sketchpads per sentence with the duration "keypress"

    Yes, this sounds very reasonable to me.

    How do I tell Open Sesame that I want each sentence to be followed by the multiple choice related to the sentence?

    Well, if you add a multiple choice item right after the last sketchpad, you will have your structure, to make sure that correct sentences appear, you would need to define them at some point of your sequence. I suppose the loop table would be a good place to define the variables. For example, you could have four variables (for each fragment one) and additionally three variables for each of the multiple choices. Maybe even a last variable for the correct response?

    Does this help?

    Eduard

    Buy Me A Coffee

  • Hello,

    Thank you for your answer! I have managed to create a trial sequence consisting of 5 individual sketchpads followed by the multi choice form (relatively easy, actually!). In order to show my 24 sentences (+ distractors), I'm guessing the easiest way is to create 1 trial sequence per category with 8 sentences per trial? Seeing as I have to make sure each sentence is read sequentially and is always followed by the correct multi choice form, I am a bit scared of using the loop table (can't seem to get my head around it actually).

    I am struggling with the response collection. By using a keyboard response after every sketchpad I manage to get an average response time (photo). However, as it is a self-paced reading task, I desperately need a response time per sketchpad. Could you help me?

    Thanks again!

  • Hi Cat,

    I desperately need a response time per sketchpad.

    You can use inline_scripts to do that. Put one before each sketchpad and one after it (One inline_script in between each sketchpad is fine). In the run phase of the inline_script you add these lines:

    # once for each sketchpad
    kb = keyboard()
    k,t = kb.get_key()
    RT_sketchpad1 =t-t_on_sketchpad1
    t_on_sketchpad2 = clock.time()
    

    The idea of this method is starting a timer right before you present the sketchpad, and stop the timer, once a key was pressed. Does this make sense?

    Seeing as I have to make sure each sentence is read sequentially and is always followed by the correct multi choice form

    Well, everything that is written on one row in the loop_table will belong together. So it is rather easy and intuitive to not confuse different sentences. I attached an example. Hope it helped.

    Eduard

    Buy Me A Coffee

  • Hello,

    Thanks again! I tried to do as suggested but I seem to have failed.. I guess I did something wrong?


    I will try to use the loop table!

    Thanks

  • 1) If you use inline_scripts to record responses, you don't need the keyboard_response items any more. Remove them. Also set the duration of the sketchpads to 0.

    2) The error is caused because you're already computing the reaction time (end time - start time), before the first sketchpad. However, this only makes sense in between sketchpads. The first and the last inline_script in the sequence have to be different. The first one skips the reaction time computation, the last one, skips starting the next timer.

    Eduard

    Buy Me A Coffee

  • edited November 2016

    I'm starting to get a hang of it : all that's missing is the inline script.
    I (think) I did what you recommended:

    But it doesn't work.. I'm so sorry, but I'm terrible with programming!
    Cat

  • edited November 2016

    Hi,

    It's a little hard to tell which inline_script it is that you are showing here. What is the problem btw? "It doesn't work" is a little to vague to be able to help ;)
    Basically, you need three different inline_scripts.

    1) Before the first sentences

    kb = keyboard()
    k,t = kb.get_key()
    t_on_sketchpad1 = clock.time()
    

    2) In between sentences

    k,t = kb.get_key()
    RT_sketchpad1 =t-t_on_sketchpad1 # mind: RT_sketchpad2, RT_sketchpad3, etc...
    t_on_sketchpad1 = clock.time()
    

    3) After the last senteces

    k,t = kb.get_key()
    RT_sketchpad1 =t-t_on_sketchpad1 # mind: RT_sketchpad2, RT_sketchpad3, etc...
    

    Does this make things clearer?

    Buy Me A Coffee

  • Hello,

    I am a bit of a disaster, I'm sorry!

    Yes, I have finally managed and it is running smoothly. Now I just have to figure out where to define the accuracy and average response time variables.

    By the way, LibreOffice Calc is a great way to have a clear overview of the variables!

    Thanks again!
    Cat

Sign In or Register to comment.