Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Array dual scale with checkboxes and scale, adding "others" and "no response"

  • mresibois
  • mresibois's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 4 months ago #192049 by mresibois
Hi there,

New to LimeSurvey, I am planning to use it to make a survey that is hosted on limesurvey.org (plan is to create it, and then take a subscription while running it), so I will be using LimeSurvey's interface.

What I would like to do is to create a question that follows this logic :
Participants have a series of projects, and they can use a checkbox to tell whether they have heard about it, and if they took part in this project.
When they checked that they took part in it, they can fill in a scale (from 1 to 4 + N/A) to indicate their percieved utility.
At the end of the list of projects, they can add 5 additional ones (short text inline).
This could look like this :

Please indicate our projects that you know of and those in which you took part. When you took part in it, can you assess their percieved utility from 1 (no utility) to 4 (total utility), or check "n/a" if no opinion.
ProjectsKnownTook partUtility | N/A
Project 1CheckboxCheckboxScale (radio button) : 1 2 3 4 | Checkbox
Project 2CheckboxCheckboxScale (radio button) : 1 2 3 4 | Checkbox
...
Other projects : inline 1CheckboxCheckboxScale (radio button) : 1 2 3 4 | Checkbox
Other projects : inline 2CheckboxCheckboxScale (radio button) : 1 2 3 4 | Checkbox
Other projects : inline 3CheckboxCheckboxScale (radio button) : 1 2 3 4 | Checkbox
Other projects : inline 4CheckboxCheckboxScale (radio button) : 1 2 3 4 | Checkbox
Other projects : inline 5CheckboxCheckboxScale (radio button) : 1 2 3 4 | Checkbox
(colours are only for redability here on the forum)

I have searched for several solutions on the forum but I can't seem to decide what's best :
- Use a dual array, but tiggeling it a lot to follow this format (is it even possible ?)
- Divide the questions between the list of projects and a possibility to add projects in the next question
- Conditionnaly show a sub-question displaying only lines for which participants have checked that they took part in the project (including the "others" ones)

Problem is that, being relatively new, it is quite hard to me to know what is possible (or not) and how to achieve it.

Would be great if you could give me some help here.

Best Regards,

Maxime
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 4 months ago #192052 by tpartner
I think you would be better off breaking it into several questions.

- Q1 (multiple-choice) - "Please indicate our projects that you know of."

- Q2 (multiple-choice) - "Please indicate our projects in which you took part."

- Q3 (multiple-short-text) - "Please indicate other projects in which you took part."

- Q4 (array) - "Please assess their perceived utility..." - sub-questions shown via array-filter or relevance based on Q2 and Q3.

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
The following user(s) said Thank You: mresibois
The topic has been locked.
  • mresibois
  • mresibois's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 4 months ago #192053 by mresibois
Thanks for the tips.
I think it would be better to keep the first two together, but I think this can be easily done with array (number).

It is, however, unclear to me how to achieve Q4 based on Q2 and Q3 using LimeSurvey user interface ; any idea (or particular resource that I could consult)?
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 4 months ago - 4 years 4 months ago #192056 by tpartner
If you use an array-numbers type question, you will not be able to use an array filter .

If you attach a small sample survey (.lss file) containing only those questions, I can give an example of the sub-question relevance required.

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Last edit: 4 years 4 months ago by tpartner.
The following user(s) said Thank You: mresibois
The topic has been locked.
  • mresibois
  • mresibois's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 4 months ago #192058 by mresibois
Thanks for your help.
Please find attached the group of question (the survey is in French but I quickly translated them - I probably made many mistakes).

Question 2 is a matrix that would have more or less looked to what I had in mind (but having to change the first scale to checkboxed, and short text spaces for additional projects).

Question 2.1, 2.2, and 2.3 are splitted according to your answer (but still keeping array numbers so far). Note that, as indicated in the group, there would be around 50 projects, so it would be tedious to have to split "known" and "attended" into two very long lists.
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 4 months ago #192060 by Joffm
Hi, Maxime,

so it would be tedious to have to split "known" and "attended" into two very long lists.

I support tpartner.
Because the respondent can only attend "known" projects the second list will be shorter.
But what is more important: In your approach (array(numbers)) you have to validate that there is no project checked as attended, but not as known.
Well, you may insert an equation to check all "attended", but "not known" projects to "known", or
to uncheck all "attended", but "not known" projects to "not attended".
Or you may use a simple matrix with the answer options "not known", "known, not attended", "attended"

Therefore tpartner proposed the two questions with matrix filter.
It is a much more clean approach.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: mresibois
The topic has been locked.
  • mresibois
  • mresibois's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 4 months ago - 4 years 4 months ago #192061 by mresibois
Hi Joffm,

Thanks for joining in.
Let's say I take that solution, and I create a first question with all projects "known". If I understood you both, it becomes "Please check all project that you know of" and the list of project with a multiple choices-type of question, am I right?

If yes, let's say that I create the question and give it a code (let's give the code Q1 for ease). Then I create a subquestion for each project (let's give them the codes SQ001, SQ002...).

What would be the next step ?
I have read the filter part given by tpartner but I am not sure exactly how to adapt that to the subquestions...
I have understood that I should use codes (I guess SQ001) but, when creating the subquestons of Q2 ("attended"), all subquestions appear even though I used as a "conditional equation filter" Q1==1. Checking logic tells me that Q1 is an "undefined variable".
When I use "Q1_SQ001==1" (and change the number), I do not have logical error anymore, but this time no subquestion appear, even when checked at Q1.

Edit : I read this thread and thus adapted my question, but I cannot make it work nevertheless.
Last edit: 4 years 4 months ago by mresibois.
The topic has been locked.
  • mresibois
  • mresibois's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 4 months ago - 4 years 4 months ago #192065 by mresibois
Oups, bad operation
Last edit: 4 years 4 months ago by mresibois.
The topic has been locked.
  • tpartner
  • tpartner's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 4 months ago - 4 years 4 months ago #192067 by tpartner
Here is a sample survey using array filters. Note that the sub-question codes in Q2 exactly match those in Q1 and the sub-question codes in Q4 exactly match those in Q2 and Q3.

File Attachment:

File Name: limesurvey...2-12.lss
File Size:38 KB



Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Last edit: 4 years 4 months ago by tpartner.
The following user(s) said Thank You: DenisChenu, mresibois
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 4 months ago #192071 by Joffm
By the way,

multiple questions are stored as "Y" or "".

So your equation should be: Q1_SQ001=="Y"

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The following user(s) said Thank You: DenisChenu, mresibois
The topic has been locked.
  • mresibois
  • mresibois's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 4 months ago #192076 by mresibois
Hi !

tpartner wrote: Here is a sample survey using array filters. Note that the sub-question codes in Q2 exactly match those in Q1 and the sub-question codes in Q4 exactly match those in Q2 and Q3.

Thanks a lot, looks great !

Joffm wrote: So your equation should be: Q1_SQ001=="Y"

That explains why :)

Thanks again for your time and help!

Best Regards,

Maxime
The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 4 months ago #192104 by DenisChenu

Joffm wrote: Q1_SQ001=="Y"

Personaly i prefer to use !is_empty(Q1_SQ001.NAOK) :)

Universal system ;)

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The topic has been locked.

Lime-years ahead

Online-surveys for every purse and purpose