E-Prime data file

David McFarlane mcfarla9 at msu.edu
Fri Dec 2 15:12:32 UTC 2011


Hank,

Stock reminder:  1) I do not work for PST.  2) PST's trained staff 
take any and all questions at 
http://support.pstnet.com/e%2Dprime/support/login.asp , and they 
strive to respond to all requests in 24-48 hours -- this is pretty 
much their substitute for proper documentation, so make full use of 
it.  3) If you do get an answer from PST Web Support, please extend 
the courtesy of posting their reply back here for the sake of others.

That said, here is my guess...

Suppose your program contains lines like this in the Procedure that 
runs B or C:

c.SetAttrib "B.RT", B.RT
c.SetAttrib "C.RT", C.RT

i.e., it explicitly logs values for both B and C, even if only one 
gets presented.  Yes, *your* inline code may have If-Thens that log 
only one or the other, but if you have enabled logging from the 
Properties Pages of B and C, then that will defeat your inline 
If-Thens and both will get logged anyway.  Don't take my word for 
that, go look at the full generated code -- every time you enable 
logging for an object, you will find a set of c.SetAttrib commands 
immediately after that object runs, *plus* the same commands again 
just before the c.Log command at the end of the Procedure.  This 
redundancy is E-Prime's attempt to ensure that attributes have proper 
values at the times needed (but note that PreRelease can defeat this, 
see Chapter 3 of the E-Prime User's Guide).

So what happens when a trial skips B?  Well, although attribute 
values do not survive from one Procdure run to the next, global 
variable and property values do survive.  So the *property* B.RT 
still has its value from the previous run of the Procedure.  Thus, 
'c.SetAttrib "B.RT", B.RT' will set the *attribute* "B.RT" to the 
current value of B.RT, which still lingers from the previous run of 
the Procedure (follow?), and so that gets logged for the current trial.

If that is the case, then the solution is merely to turn off logging 
from the Properties Pages of B and C, and do all logging explicitly 
in your inline code.

-- David McFarlane, Professional Faultfinder
"For a successful technology, reality must take precedence over 
public relations, for nature cannot be fooled."  (Richard Feynman, 
Nobel prize-winning physicist)


At 12/2/2011 09:58 AM Friday, David Vinson wrote:
>Hi Hank,
>
>We have experienced something very similar in experiments with 
>contingent designs (skipping one or more data collection objects 
>depending on various characteristics of responses).
>
>I'm sure someone else has a more elegant solution but we got around 
>this problem by adding inline code which set these variables to 
>impossible values (e.g. RT = -99) if a particular object was not run 
>on a given trial. Then we filtered such values out of any analyses 
>we conducted.
>
>cheers,
>david
>
>On 02/12/2011 14:44, Hank Jedema wrote:
>>Hi All,
>>
>>Here is something in the E-data file that seems problematic and
>>puzzles me: In a stoptask I use a number of if - then scripts to
>>present a sequence of stimulus slides. The script occurs just after
>>each slide and dependent on the whether a response was received or
>>that the slide simply timed out (i.e. reached the end of its slide
>>duration), the script will advance the trial on to the next slide
>>(let's say slide B if a response was received or slide C if no
>>response was received. The issue that I am having is that when I log
>>the response and onset time etc for slides B and C, the E-data file
>>list values for all, even though the slide B and C are mutually
>>exclusive. I would expect a "NULL" for the slide that was not
>>presented, but instead if slide B was actually presented, it will list
>>the values from a prior trial for slide C duration, slide C response
>>etc, and vice versa. The program is is structured so that 2 nested
>>lists specify the trial type and stimulus duration and the program
>>properly runs the correct number of trials (300). In the E-data file
>>each trial provides one line of data. What am I missing? Thanks very
>>much for your help.
>>Hank
>
>--
>David Vinson, Ph.D.
>Senior Postdoctoral Researcher
>Cognitive, Perceptual and Brain Sciences Research Department
>University College London
>26 Bedford Way, London WC1H 0AP
>Tel +44 (0)20 7679 5311  (UCL internal ext. 25311)

-- 
You received this message because you are subscribed to the Google Groups "E-Prime" group.
To post to this group, send email to e-prime at googlegroups.com.
To unsubscribe from this group, send email to e-prime+unsubscribe at googlegroups.com.
For more options, visit this group at http://groups.google.com/group/e-prime?hl=en.



More information about the Eprime mailing list