Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Handling of five-point scale questions (value and label)

I am new to Qlikview and thus not quite sure how to handle this.

We conduct surveys which asks a lot of questions using 5-point scale (i.e. 1 = strongly disagree 3 = neutral; 5 = strongly agree). Usually the results are stored in numbers so that we can calculate the mean, SD, etc. But in making reports or charts, we do want the reports / charts to show "Strongly disagree" / "neutral" / "Strongly agree" instead of numbers.

Is there a way to tell qlikview what do the numbers mean? Any loading script which serves this purpose?

3 Replies
Clint_Carr
Employee
Employee

Hi,


You could load this from another file, if both files contain the number (code column) QlikView/Sense will automatically associate the data.

Alternatively,  you could do a inline load:

LOAD * INLINE [

     Code, Label

     1, Agree

     ];

etc.

A third method would be to put a conditional IF in your load:

IF(code=1, 'Agree', IF(code=2,'Disagree','AnotherValue))

Regards,

Clint

Anonymous
Not applicable
Author

Hi Horry,

If you are looking to replace the number values with text when loading your data to QlikView / Sense, you can achieve this by create an Inline mapping table in the beginning of your script, then use the ApplyMap command to make the switch.

Example:

MappingSurvey:

MAPPING LOAD * INLINE [

Number, Description

1, Strongly Disagree

2, Disagree

3, Neutral

4, Agree

5, Strongly Agree

];

DataTable:

LOAD

  QuestionField,

  NumberField,

  ApplyMap('MappingSurvey', NumberField, 'Not in Range') as DescriptionField

FROM

  [Source Data File];

Cheers,

Sean

jonathandienst
Partner - Champion III
Partner - Champion III

Hi

That is how I would do it too, with one modification - I  would make the values duals so that they are easier to sort in a chart or table:

MappingSurvey:

MAPPING LOAD

Number, Dual(Description, Number)

INLINE [

Number, Description

1, Strongly Disagree

2, Disagree

3, Neutral

4, Agree

5, Strongly Agree

];

DataTable:

LOAD

  QuestionField,

  NumberField,

  ApplyMap('MappingSurvey', NumberField, Dual('Not in Range', 10)) as DescriptionField

FROM

  [Source Data File];

HTH

Jonathan

Logic will get you from a to b. Imagination will take you everywhere. - A Einstein