Participant likert scale

David McFarlane mcfarla9 at msu.edu
Fri Sep 2 14:21:28 UTC 2011


I agree, C and its derivatives are beautiful, 
BASIC and all its derivatives (e.g., VBA, 
E-Basic) are clumsy and ugly (apologies to John 
Kemeny and Thomas Kurtz, originators of BASIC at 
Dartmouth College in 1964). (And thanks for 
if-php-were-british, I like the "perchance" statement, etc.)

Anyway, I hate to spare anyone the exercise of 
puzzling this out for themselves, but I fear that 
Neil may turn this into a bunch of If-Then 
statements instead of doing it properly with 
Select Case (also, it allows readers to see the 
inferiority of the E-Basic expression).  So 
forthwith, my translation into E-Basic:

Select Case (ResponseDisplay.RESP)
Case "1"
     myNRESP = myNRESP + 1
     If (myNRESP > 7) Then myNRESP = 0
     Goto PreJump
Case "2"
     myNRESP = myNRESP - 1
     If (myNRESP < 0) Then myNRESP = 0
     Goto PreJump
Case Else
     ' Done.
End Select

Note that the If-Then constructs for the two 
rollover computations merely implement modular 
arithmetic.  So, for extra credit, do this 
actually using modular arithmetic (i.e., the Mod 
operator).  As an additional exercise, try using 
a conditional statement (Iif might work well 
here) to select the sign of the 
increment/decrement value so that you can use the 
same line of code to do either rollover computation.

-- David McFarlane, Professional Faultfinder


At 9/2/2011 05:11 AM Friday, Michiel Spape wrote:
>Hiya,
>Yes, well, I suppose you probably already 
>figured this out, but the idea would be to add 
>another inline after the last textdisplay, and 
>don't do the end-action = jump label. With the 
>bit of code in this inline, you'd 1) check response, 2) reset to 0 as in:
>switch (ResponseDisplay.Resp)
>{
>     case "1": myNRESP+=1; if (myNRESP > 7) 
> {myNRESP = 0;} goto PreJump; break;
>     case "2": myNRESP-=1; if (myNRESP < 0) 
> {myNRESP = 0;} goto PreJump; break;
>     default: break;
>}
>
>You can see the above is a little mix of c# and 
>e-basic. This is because A) c# is beautiful, B) 
>I tend to forget the specifics of basic syntax 
>(certainly regarding the switch statement), C) 
>the proper way is somewhere in the e-basic help, and it pays to learn a bit.
>
>PS: David, and my fellow geeks, perhaps you'll 
>enjoy this as much as I did: 
>http://www.addedbytes.com/blog/if-php-were-british/
>
>
>Cheers,
>Mich
>
>Michiel Spapé
>Research Fellow
>Perception & Action group
>University of Nottingham
>School of Psychology
>www.cognitology.eu
>
>
>-----Original Message-----
>From: e-prime at googlegroups.com 
>[mailto:e-prime at googlegroups.com] On Behalf Of Neil McLatchie
>Sent: 01 September 2011 18:21
>To: E-Prime
>Subject: Re: Participant likert scale
>
>Thank you kindly for your help!
>
>At the moment I am using the mouse to increase the number. However,
>both buttons are doing the same thing, and there is no limit - I can
>click as many times as I like within the set time.
>
>If there is any way of a) looping the number so that once it gets to 7
>it loops back round to 1, and b) to differentiate between right
>clicking increasing the number and left clicking terminating, it would
>be great.
>
>Thanks again for the help I've already received!
>
>Cheers,
>Neil
>
>On Sep 1, 5:40 pm, Michiel Spape <Michiel.Sp... at nottingham.ac.uk>
>wrote:
> > Like so!
> > ...i was writing:
> > Hiya,
> > I think those pretty much *were* babysteps, 
> provided you've done enough with E-Prime to 
> really work on it. If not, try having a go at 
> the tutorial or the E-Primer (link elsewhere on 
> this list, or on my own homepage around "about 
> me"). It will be worth your while, and doesn't take all that long.
> >
> > Anyway, as said:
> > Add an inline (just drag it), and copy-paste the following TWO lines:
> > ------
> > myNRESP = myNRESP + 1 'adds 1 to number of 
> responses - the baseline of your code
> > c.SetAttrib "NRESP", myNRESP 'saves the number of responses
> > ------
> >
> > That adds, automatically the attribute, even 
> if you don't have a list. You'll ultimately 
> need a list somewhere anywhere, but for now, this works.
> > Best,
> > Mich
> >
> > Michiel Spapé
> > Research Fellow
> > Perception & Action group
> > University of Nottingham
> > School of Psychologywww.cognitology.eu
> >
> > -----Original Message-----
> > From: e-prime at googlegroups.com 
> [mailto:e-prime at googlegroups.com] On Behalf Of Neil McLatchie
> > Sent: 01 September 2011 17:37
> > To: E-Prime
> > Subject: Re: Participant likert scale
> >
> > Hi again, sorry about the confusion earlier.
> >
> > I've done what you suggested. I'm a little thrown by part of 4. I've
> > done everything else, but where do i create this attribute? Do i just
> > put a list after the second inline and create it?
> >
> > On Sep 1, 5:15 pm, Michiel Spape <Michiel.Sp... at nottingham.ac.uk>
> > wrote:
> > > Hi Neil,
> > > So, if I'm correct, this should be it, let 
> me know if I forgot something. Add the following to some procedure:
> > > 1. TextDisplay, I'm calling it question. 
> You can insert the question here ("how guilty") etc.
> > > 2. Inline with code:
> > > dim myNRESP as integer 'initializes an integer
> > > myNRESP = -1 'sets it to -1, for reasons that should be clear later
> > > 3. Label, called PreJump
> > > 4. Inline with code
> > > myNRESP = myNRESP + 1 'adds 1 to number of 
> responses - the baseline of your code
> > > c.SetAttrib "NRESP", myNRESP 'saves the number of responses
> > > 5. TextDisplay, I called it 
> ResponseDisplay. It displays the following text 
> [NRESP] (after the attribute created earlier); 
> a maximum duration of whatever you'd like to be 
> the final duration of your responses hammering 
> (I made it 1000 ms here, default). An input 
> object (I used my keyboard, any button 
> allowed). And most important: end action: jump to label: PreJump.
> >
> > > Voila - tested, works. Only thing to do is 
> dump all this in a list and add your likert questions.
> > > Cheers,
> > > Mich
> >
> > > Michiel Spapé
> > > Research Fellow
> > > Perception & Action group
> > > University of Nottingham
> > > School of Psychologywww.cognitology.eu
> >
> > > -----Original Message-----
> > > From: e-prime at googlegroups.com 
> [mailto:e-prime at googlegroups.com] On Behalf Of Neil McLatchie
> > > Sent: 01 September 2011 17:02
> > > To: E-Prime
> > > Subject: Participant likert scale
> >
> > > Hi everyone,
> >
> > > I'm quite new to this and am about to do my first fMRI study. I
> > > basically need to ask participants to provide feedback of how they are
> > > feeling whilst in the scanner. However, due to being in an fMRi, they
> > > can't talk or move, except they have a button in each hand.
> >
> > > Ideally I would like to be able to ask them e.g. 'how guilty do you
> > > feel right now' and have a '0' appear in the middle of the screen.
> > > They then click the right button from 1-7 times to let me know how
> > > guilty they are feeling at that instance. If possible, I would like it
> > > to somehow loop, so that if they by accident push the right button 8
> > > times, it just loops back to 0. It would be good if they could then
> > > confirm (terminate the slide) with the left button.
> >
> > > As I'm not working the with fmri for another couple of weeks, it would
> > > be good if I could have a practice with this using two buttons on a
> > > keyboard, but I've no idea where to begin.
> >
> > > Any help welcome!
> >
> > > Cheers,
> > > Neil

-- 
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