- Posts: 8
- Thank you received: 0
Welcome to the LimeSurvey Community Forum
Ask the community, share ideas, and connect with other LimeSurvey users!
Importer les réponses précédentes ET filtrer les non-réponses dans un tableau
- Ibrahim.r
- Topic Author
- Offline
- New Member
Je suis chercheuse en sciences sociales, avec (quasiment) aucune base en langage de programmation.
J'utilise la Version 3.25.14 de LimeSurvey.
Dans le cadre d'une étude sur les réseaux, je cherche à collecter tout au long de mon questionnaire, des noms de personnes citées au fur et à mesure des questions.
Je suis parvenue en fin de questionnaire, à générer une question de type tableau type texte :
- dont les sous-questions en Y correspondent à tous les prénoms cités durant le questionnaire (toutes les réponses précédentes). En insérant par exemple, dans les sous questions, la mention suivante : {INSERTANS:865113X16X533SQ001_SQ001}
- dont les sous questions en X correspondent à tous ces mêmes prénoms cités durant le questionnaire (toutes les réponses précédentes). En insérant par exemple dans les options de réponses, la mention suivante : {INSERTANS:865113X16X533SQ001_SQ001}
En revanche, il est impératif pour moi d'éliminer les réponses précédentes lorsqu'elles sont vides. Pour cela, j'ai essayé d'insérer ceci dans les équations de filtre conditionnel des sous questions Y : "! Is_empty (865113X16X533SQ001_SQ001)".
Cependant, cela ne produit aucun effet sur l'affichage des sous questions, d'autant plus que cela n'est pas paramétrable pour les sous question en X.
Est-ce que quelqu'un saurait m'indiquer le type d'expression à indiquer dans quel type de champ ? Malgré ma lecture du manuel, celui-ci demeurre encore trop obscur pour moi.
Merci beaucoup.
- Joffm
- Offline
- LimeSurvey Community Team
- Posts: 12715
- Thank you received: 3926
C'est un peu difficile à comprendre.
Et pour supprimer les colonnes vides de l'axe X, il y a le plugin "hideEmptyColumn"
[url] gitlab.com/SondagesPro/QuestionSettingsType/hideEmptyColumn [/url]
Joffm
Et vous ne devriez plus l'utiliser {INSERTANS: 865113X16X533SQ001_SQ001}
Meilleur L'Expression Manager
Volunteers are not paid.
Not because they are worthless, but because they are priceless
- DenisChenu
- Offline
- LimeSurvey Community Team
- Posts: 13912
- Thank you received: 2549
Tu exportes en CSV, tu importes dans un tableur et tu fais tes traitements dans le tableur.
Pourquoi s’embêter à tenter de faire des concaténation dans Limesurvey alors que LooCalc sait très bien le faire ?
Denis
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.
- Ibrahim.r
- Topic Author
- Offline
- New Member
- Posts: 8
- Thank you received: 0
However the Limesurvey manual isn't well translated in French, and I just want to kill myself when I am trying to read it (it's like trying to understand a foreign langage (programing) translated in another foreign langage (english), not well translated in my mother langage (french)...
By suggesting to use the expression manager, do you mean to replace the expression {INSERTANS : xxxx} with an expression like xxxxx..shown ? In this case, what would be the right syntax for questions and subquestions references ?
Many thanks again !
- Ibrahim.r
- Topic Author
- Offline
- New Member
- Posts: 8
- Thank you received: 0
ce que je ne comprends pas : pourquoi tenter une analyse dans Limesurvey ?
Tu exportes en CSV, tu importes dans un tableur et tu fais tes traitements dans le tableur.
Merci pour votre retour.
En fait j'ai besoin d'interroger la personne enquêtée sur l'ensemble de ses réponses précédentes, durant la passation du questionnaire.
Tout au long de la passation, je lui fais se remémorer des noms de personnes d'après l'évocation de différentes circonstances.
A la fin de la passation, j'ai besoin qu'elle me permette de compléter une matrice d'inter-connaissances.
Si elle me cite des personnes A, B, C, D, j'ai besoin de savoir en temps réel si A connaît B, C, D, si B, connaît A, C, D, etc. Je crée donc un tableau matriciel.
Le problème c'est que je n'ai pas 4 questions. Il est probable qu'elle me cite jusqu'à 50 noms, sachant qu'à chaque question, je dois prendre en compte la variabilité des réponses entre les individus, et laisser deux fois plus d'espaces de réponses.
Il est donc vraiment important que je puisse ne pas faire apparaître les réponses vides.
Pourquoi s’embêter à tenter de faire des concaténation dans Limesurvey alors que LooCalc sait très bien le faire ?
Denis
Je ne connais pas LooCalc... auriez-vous un lien Web ? Je ne suis pas parvenue à trouver via mon moteur de recherche. Merci !
(Pour ma part, je fais habituellement mon traitement de données sous R)
- Ibrahim.r
- Topic Author
- Offline
- New Member
- Posts: 8
- Thank you received: 0
Joffm wrote: Veuillez envoyer votre enquête en tant qu'export lss.
C'est un peu difficile à comprendre.
Et pour supprimer les colonnes vides de l'axe X, il y a le plugin "hideEmptyColumn"
[url] gitlab.com/SondagesPro/QuestionSettingsType/hideEmptyColumn [/url]
Joffm
Et vous ne devriez plus l'utiliser {INSERTANS: 865113X16X533SQ001_SQ001}
Meilleur L'Expression Manager
Thanks for your answer. I can't export the .lss for the moment since I have a http error 500 (I don't know why).
However the Limesurvey manual isn't well translated in French, and I just want to kill myself when I am trying to read it (it's like trying to understand a foreign langage (programing) translated in another foreign langage (english), not well translated in my mother langage (french)...
By suggesting to use the expression manager, do you mean to replace the expression {INSERTANS : xxxx} with an expression like xxxxx..shown ? In this case, what would be the right syntax for questions and subquestions references ?
Many thanks again !
- DenisChenu
- Offline
- LimeSurvey Community Team
- Posts: 13912
- Thank you received: 2549
Ça va pas être évident …
Ne pas utiliser les SGQA, mais directement les codes de questions , c'est plus facile.
> INSERTANS:865113X16X533SQ001_SQ001 devient QCODE_SQ01_SQ01
Mieux séparer les X et les Y : c'est plus compréhensible.
> SX01, SX02 en axe X
> SY01,SY02 en axe Y
Utiliser NAOK , surtout sur !is_empty
> !is_empty(QCODE_SY01_SX01.NAOK) devrait fonctionner sur les lignes
Pour les colonnes : je confirme : seule l'utilisation de hideEmptyColumn ou d'un script adapaté permet de le faire.
Attention 50 personnes : ca fait 50x50 => 250 colonnes, ca peut dépasser le nombre de colonnes maximales.
…
LooCalc : LibreOffice Cals , mais tu utilise R, donc rien. Et surtout tu as expliqué pourquoi tu avais besoin.
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.
- Ibrahim.r
- Topic Author
- Offline
- New Member
- Posts: 8
- Thank you received: 0
DenisChenu wrote: OK,
Ça va pas être évident …
Ne pas utiliser les SGQA, mais directement les codes de questions , c'est plus facile.
> INSERTANS:865113X16X533SQ001_SQ001 devient QCODE_SQ01_SQ01
Mieux séparer les X et les Y : c'est plus compréhensible.
> SX01, SX02 en axe X
> SY01,SY02 en axe Y
Utiliser NAOK , surtout sur !is_empty
> !is_empty(QCODE_SY01_SX01.NAOK) devrait fonctionner sur les lignes
Pour les colonnes : je confirme : seule l'utilisation de hideEmptyColumn ou d'un script adapaté permet de le faire.
Attention 50 personnes : ca fait 50x50 => 250 colonnes, ca peut dépasser le nombre de colonnes maximales.
…
LooCalc : LibreOffice Cals , mais tu utilise R, donc rien. Et surtout tu as expliqué pourquoi tu avais besoin.
Un grand merci à toi !!!
Effectivement 250 cases ça risque d'être ingérable à l'affichage... Je vais réfléchir à une solution alternative pour ma question finale.
- Ibrahim.r
- Topic Author
- Offline
- New Member
- Posts: 8
- Thank you received: 0
Je reviens à la charge avec un nouvelle question !
- Je suis parvenue à télécharger le plugin transmis par @Joffm (encore merci !) et je crois avoir compris que pour pouvoir l'utiliser, il faut que j'héberge le questionnaire dans un espace sur le serveur de mon propre labo. Ce sera fait.
- J'ai aussi réussi à accéder à mon ancien questionnaire pour le supprimer (erreur côté serveur) et charger son enregistrement .lss pour supprimer de toute urgence toutes les questions à INSERTANS qui semblent l'avoir assassiné (plus de 100 insertans dans une seule question). A présent, j'y ai de nouveau accès.
- Je pense avoir compris la syntaxe des expressions telles que préconisées dans le manuel (merci @DenisChenu)
Sur le forum, je n'ai trouvé que des questions relatives au pré-remplissage des attributs des invités.
Dans le manuel, ça a l'air d'être indiqué comme ceci : getAnsOption(X)
Sauriez-vous à nouveau m'aiguiller ?
A nouveau, mille mercis.
Rym I.
- DenisChenu
- Offline
- LimeSurvey Community Team
- Posts: 13912
- Thank you received: 2549
Il faut
1. Que la question équation soit située avant la quetsion que tu veux préremplir
2. Tu peux préremplir plusieurs valeurs
Avec un tablea en X/Y à partir d'un autres, trés rapidement
{TAB1_X01_Y01 = if(is_empty(TAB1_X01_Y01.NAOK),TAB2_X01_Y01.NAOK,TAB1_X01_Y01.NAOK)} {TAB1_X01_Y02 = if(is_empty(TAB1_X01_Y02.NAOK),TAB2_X02_Y01.NAOK,TAB1_X01_Y02.NAOK)} {TAB1_X02_Y01 = if(is_empty(TAB1_X02_Y01.NAOK),TAB2_X01_Y02.NAOK,TAB1_X02_Y01.NAOK)} {TAB1_X02_Y02 = if(is_empty(TAB1_X02_Y02.NAOK),TAB2_X02_Y02.NAOK,TAB1_X02_Y02.NAOK)}
Ici : on transpose
if(is_empty(TAB1_X02_Y02.NAOK)… permet de ne pas modifier une valeur existente , uniquement les valeurs vide
Voir : manual.limesurvey.org/Expression_Manager..._Assignment_Operator
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.