|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
Bonjour à tous !
Je vous expose mon problème. Je dispose d'une base de données stockant les réponses de N individus à un questionnaire composé de 28 questions, dont les modalités de réponse sont identiques (1:pas du tout d'accord, 2: pas d'accord, 3: d'accord, 4:tout à fait d'accord) Le dataset se présente donc ainsi item1 item2 ... item28 3_____1________3 2_____4________1 1_____1________2 je souhaite effectué l'analyse descriptive de l'ensemble de ces items (taux de réponse, effectif ayant choisi la modalité de cet item, pourcentage ayant choisi la modalité de cet item), en présentant si possible les résultats sous cette forme: __________________________________________Modalités _________Taux de réponse______1__________2__________3_________4 __________________________n____%_____n____%____n____%____n___% item 1__________98 item 2__________97 ... item 28________100 Je me suis renseigné sur les procédures Report et Tabulate, mais sans résultat pour le moment. Je vous remercie d'avance. |
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Bonjour,
Un tableau de ce type de conviendrait? on peux toujours se débrouiller à l'exporter dans un classeur Excel. Code :
|
||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
Bonjour Megamind2 et merci de te pencher sur mon problème.
Le problème avec ta solution, c'est que le tableau de résultats présente en ligne les individus, alors que moi je souhaiterais y voir figurer les items. Par contre en colonne, c'est bien la présentation voulue. Merci |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
ça te va comme ça Juju ?
Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
inverser les lignes et les colonnes ne suffit pas à résoudre mon problème...
|
|
|
00
|
|
|
#6 | |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Citation:
|
|
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
dans l'absolu, je souhaiterais avoir le tableau que j'ai présenté
pour être plus clair:
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Tu pourrais poster un échantillon de ton fichier au format txt?
|
|
|
00
|
|
|
#9 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
Voila un échantillon de mon dataset
|
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Il faudrait générer 4 tables par item (ce qui fait 4*27), les concaténées puis transposer avant d 'appliquer la proc freq. Je réfléchis à la solution la plus optimale sinon ça promet d'être long...
|
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
j'ai tenté cela:
proc freq sur chacun des items et on enregistre le résultat dans une table (si 27 items, 27 tables) Puis on transpose chacune des tables crées précédemment, en écrasant les tables précédentes. et enfin, on fait une jointure horizontale des tables transposées. Je pense bien sur automatiser tout cela dans une macro. On obtient ceci (pour les 2 premiers items) ![]() Maintenant, comment présenter les résultats proprement... |
|
|
00
|
|
|
#12 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
J'ai avancé de mon coté, il reste plus qu'a calculer des pourcentages en ligne sans passer par une proc freq (_1/ som (of _1 _2 _3 _4 _5)., ...) Si tu n'arrives par à faire le calcul, fais moi signe.
Tu remplace BASE par le nom de ta table SAS. Code :
|
||
|
|
00
|
|
|
#13 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
|
|
|
00
|
|
|
#14 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
|
|
|
00
|
|
|
#15 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Le code en entier, tu réajusteras si ça ne te convient pas...
Code :
|
||
|
|
00
|
|
|
#16 | ||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Bonsoir à tous.
Comme souvent j'arrive après la bataille, et comme souvent je vais faire mon chieur en expliquant qu'on s'en sort sans macro à condition de mettre ses données dans la forme qui convient. TABULATE est une excellente option pour faire ton tableau Juju, à condition : 1) d'avoir mis une ligne par réponse à un item pour un questionnaire (il y aura donc une proc TRANSPOSE en amont) 2) d'avoir calculé d'avance le taux de réponses parce que sinon c'est une galère sans nom de sortir l'item 5 du tableau (alors que si le taux de réponses est pré-calculé on n'a qu'à mettre un WHERE). Je suis parti de ton fichier exemple, importé dans une table WORK.BASE. La suite c'est Code :
Olivier |
||
|
|
00
|
|
|
#17 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Je me suis pas tapé tout ça et que tu viennes à la fin de la journée dire qu'il y plus simple Olivier
|
|
|
00
|
|
|
#18 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 31 ![]() |
Vraiment merci Olivier !
Quand on voit la solution on se dit que ça parait simple, mais encore faut-il être en mesure de bien poser le problème pour y arriver, et toi, tu sais le faire à la perfection ![]() Merci à toi également Megamind2 pour le temps et l'énergie que tu as consacré à mon problème ! Bonne journée et à bientôt ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com