dot probe


Author
Message
Jens Bölte
Jens Bölte
Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)
Group: Forum Members
Posts: 78, Visits: 60
Hello,

a dot-probe experiment that I am programming does not run the way I intend it to run and I cannot find the error. I tried to use four list-elements to present the probe "F" and "J" equally often on the left side or the right side of the screen and equally often preceded by an emotion word or a non-emotion word. However, I do not get the wanted distribution. Given that sometimes "A" or "B" is presented as a probe indicates that the if-construction is sometimes not evaluated. But why?

Best regards Jens

Attachments
EmoWordDot.iqx (614 views, 10.00 KB)
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 104K
In your <trial> elements, you are constantly *inserting* items into the probe <text> elements:

<trial t.neg.word.left>
/ ontrialbegin = [if (list.posi.probe.neg.left.nextvalue == 1)      {text.probe.left.hposition = values.links; values.pos = values.links; text.probe.left.insertitem("F", 1)}
                  else if (list.posi.probe.neg.left.nextvalue == 2) {text.probe.left.hposition = values.rechts; values.pos = values.rechts; text.probe.left.insertitem("F", 1)}
                  else if (list.posi.probe.neg.left.nextvalue == 3) {text.probe.left.hposition = values.links; values.pos = values.links; text.probe.left.insertitem("J", 1)}
                  else if (list.posi.probe.neg.left.nextvalue == 4) {text.probe.left.hposition = values.rechts; values.pos = values.rechts; text.probe.left.insertitem("J", 1)}]

Inserting an item does *not* remove any items that are already there. Since the <text> elements sample randomly without replacement, the already existing items ("A", "B") may eventually be sampled.

You don't want to use insertitem(). What you want to use is the setitem() function.

Jens Bölte
Jens Bölte
Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)
Group: Forum Members
Posts: 78, Visits: 60
Hello,

ok, when I use setitem the probe is displayed with "".

<trial t.neg.word.left>
/ontrialbegin = [if (list.posi.probe.neg.left.nextvalue == 1)      {text.probe.left.hposition = values.links; values.pos = values.links; text.probe.left.setitem("F", 1)}
                  else if (list.posi.probe.neg.left.nextvalue == 2) {text.probe.left.hposition = values.rechts; values.pos = values.rechts; text.probe.left.setitem("F", 1)}
                  else if (list.posi.probe.neg.left.nextvalue == 3) {text.probe.left.hposition = values.links; values.pos = values.links; text.probe.left.setitem("J", 1)}
                  else if (list.posi.probe.neg.left.nextvalue == 4) {text.probe.left.hposition = values.rechts; values.pos = values.rechts; text.probe.left.setitem("J", 1)}]
/stimulusframes = [ 1 = fixation; 30 = maske; 31 = neg.word.left.tar, neg.word.left.dis; 42 = maske; 43 = probe.left ]
/validresponse = ("F", "J")
/iscorrectresponse = [if (text.probe.left.currentitem == "F") {values.korrekt = 33} else {values.korrekt = 36}]
/timeout = 3000
</trial>


Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 104K
Shouldn't happen if your Inquisit installation is up to date.

Jens Bölte
Jens Bölte
Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)
Group: Forum Members
Posts: 78, Visits: 60
Hello,

I update to 4.0.7 from 4.0.2 and the quotes disappeared. Thanks a lot.

Jens

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 104K
Please note that the current release is 4.0.8.0, available (as always) via

https://www.millisecond.com/download

Jens Bölte
Jens Bölte
Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)
Group: Forum Members
Posts: 78, Visits: 60
Hello Dave,

I will inform our IT about the new release.

Jens Bölte
Jens Bölte
Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)Guru (9.5K reputation)
Group: Forum Members
Posts: 78, Visits: 60
Hello,

the evaluation no longer works.
<trial t.neg.word.right>
/ontrialbegin = [if (list.posi.probe.neg.right.nextvalue == 1)      {text.probe.right.hposition = values.links; values.pos = values.links; text.probe.right.setitem("F",1)}
                  else if (list.posi.probe.neg.right.nextvalue == 2) {text.probe.right.hposition = values.rechts; values.pos = values.rechts; text.probe.right.setitem("F",1)}
                  else if (list.posi.probe.neg.right.nextvalue == 3) {text.probe.right.hposition = values.links; values.pos = values.links; text.probe.right.setitem("J",1)}
                  else if (list.posi.probe.neg.right.nextvalue == 4) {text.probe.right.hposition = values.rechts; values.pos = values.rechts; text.probe.right.setitem("J",1)}]
/stimulusframes = [ 1 = fixation; 30 = maske; 31 = neg.word.right.tar, neg.word.right.dis; 42 = maske; 43 = probe.right ]
/validresponse = ("F", "J")
/iscorrectresponse = [if (text.probe.right.currentitem == "F"){values.korrekt = 36} else {values.korrekt = 33}]
/timeout = 3000
</trial>


/iscorrectresponse = [if (text.probe.right.currentitem == "F"){values.korrekt = 36} else {values.korrekt = 33}] always evaluates to 1 but it should evaluate to 0 in row 2 or row 4 of the data file (or the assignment of values.korrekt is incorrect).
subject    blockcode    trialnum    trialcode    latency    response    correct    values.korrekt    values.pos    stimulusitem1    stimulusitem2    stimulusitem3    stimulusitem4    stimulusitem5    stimulusitem6
1    block.pos    1    t.pos.word.right    512    33    1    33    60pct    *    maske    genial    Koran    maske    J
1    block.pos    2    t.pos.word.left    510    36    1    33    40pct    *    maske    Jubel    Metzger    maske    J
1    block.pos    3    t.pos.word.right    498    36    1    36    60pct    *    maske    Busen    heroisch    maske    F
1    block.pos    4    t.pos.word.left    484    33    1    36    60pct    *    maske    brilliant    Umbruch    maske    F
I
Best Jens

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 104K
Jens,

/iscorrectresponse = [if (text.probe.right.currentitem == "F"){values.korrekt = 36} else {values.korrekt = 33}]

cannot work because you never check values.korrekt against the trial's response property.

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 13K, Visits: 104K
GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search