Millisecond Forums

Likert Scale buttonvalues

https://forums.millisecond.com/Topic19084.aspx

By jeff.smith - 5/13/2016

http://www.millisecond.com/forums/Topic11851-2.aspx (See this thread for some discussion)

I would like two propose two items. The first is to make the function of the buttonvalues syntax of the <likert> stimuli more clear in the help file. The second would be nice to achieve greater functionality:

1. Re-word the helpfile for buttonvalues in the Likert stimuli:
"value    Specifies the value (in quotes) to record in the data file if the subject selects the corresponding point"

to

"value    Specifies the value (in quotes) to display to the subject and record in the data file if the subject selects the corresponding point"

As it reads I was under the impression that I could put in a value that would be recorded in the data, but the button pressed for "point" would remain the same. I would prefer if it functioned as I thought it should, but because it does not I would suggest #2 below:

2. Create a new syntax that allows you to specify what value is recorded in the data, but does NOT change the value displayed to the subject.

I want to avoid having users select options with a mouse. 

For this code, I MUST use a mouse due to the 999 value of point 6. 

<likert likertHHBC>
/ anchors = [1="strongly disgree"; 2="disagree"; 3="neither agree nor disagree"; 4="agree"; 5="strongly agree"; 6="prefer not to answer"]
/ buttonvalues = [1="1", 2="2", 3="3", 4="4", 5="5", 6="999"]
/ stimulusframes = [1 = HHBCpage]
/ mouse=false
/ numpoints=6
/ position= (50, 50)
</likert>

Jeff
By jeff.smith - 5/13/2016

"to propose"* Haha. Sorry for the typo. Also, can we get some post-editing functions on here?
By jeff.smith - 5/13/2016

Another downfall to requiring mouse usage is that the users cannot change their answer if they accidentally click the wrong one. With keyboard if they press the wrong number they can change their answer by pressing the correct number before pressing enter to proceed to the next page.
By Dave - 5/13/2016

> For this code, I MUST use a mouse due to the 999 value of point 6.

This is not quite correct. You should be able to use your keyboard's arrow keys to navigate between the options and then use ENTER to submit a response.
By jeff.smith - 5/13/2016

Fair point. Would prefer to have number input only. I expect some users to not be very tech savvy. 
By Dave - 5/13/2016

Point taken. A way to make this work using only currently available syntax features would be:

<values>
/ responsevalue = ""
</values>


<likert mylikert>
/ ontrialend = [if (likert.mylikert.response == "6") values.responsevalue = "999"
    else values.responsevalue = likert.mylikert.response;
]
/ stimulusframes = [1=mytext]
/ anchors = [1="strongly disgree"; 2="disagree"; 3="neither agree nor disagree"; 4="agree"; 5="strongly agree"; 6="prefer not to answer"]
/ mouse=false
/ numpoints=6
/ position= (50, 50)
</likert>

<text mytext>
/ items = ("Cats are cute.", "Dogs are obedient.")
/ position = (50%, 40%)
</text>

<block myblock>
/ trials = [1-2=mylikert]
</block>

<data>
/ columns = [date time subject group blocknum blockcode trialnum trialcode stimulusnumber stimulusitem
    latency response values.responsevalue correct]
/ separatefiles = true
</data>