|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 75 ![]() |
Bonjour,
je cherche à sommer les différentes modalités de plusieurs variables dans une et une seule colonne afin d'améliorer la lisibilité de mon fichier, mais là je galére un peu pour trouver une solution , quelqu'un aurait une idée de la démarche à suivre.je vous envoie en lien un petit fichier pour mieux comprendre ce que je cherche à faire merci |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Je n'arrive pas à comprendre avec le fichier, tu peux être plus explicite encore...
|
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 75 ![]() |
dans le fichier la première colonne correspond à mes attentes.
les autres colonnes sont obtenus en réalisant une proc tabulate mais au lieu que les différentes modalités soient listées dans une même colonne elle se sont découpé en fonction des variables auxquelles elles appartenait. j'aimerais trouver une façon de les réunir sous une seule et même colonne avant de sortir les résultats sous Excel. |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
C'est facile, tu rajoutes une colonne supplémentaire qui est la concaténation des trois colonnes B, C et D
et dans ta proc tabulate, tu remplaces les 3 variable par une seule (nouvelle_colonne). |
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 75 ![]() |
merci
|
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
|
|
|
00
|
|
|
#7 |
|
Membre éclairé
![]() statisticien Inscription : mai 2011 Messages : 212 ![]() |
si tu as des formats c'est normal essaye avec
Code :
nouvelle_colonne=compress(put(A,$formatA.)!!put(B,$formatB.)!!put(C,$formatC.)); |
|
|
00
|
|
|
#8 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 75 ![]() |
en piéce jointe je te donne le résultat obtenu megamind. l'histoire du format ne fonctionne pas je n'en ai pas.
|
|
|
00
|
|
|
#9 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Utilises la proc format pour recoder les modalité de ta nouvelle variable comme suit:
Code :
|
||
|
|
00
|
|
|
#10 | ||
|
Membre Expert
![]() Biostatisticien Inscription : juin 2009 Messages : 1 143 ![]() |
personnellement je partirais sur
Code :
Code :
nouvelle_colonne=compress(put(A,$formatA.)!!put(B,$formatB.)!!put(C,$formatC.)); Tu peux même faire mieux qu'avec les if, en utilisant un select when. Manoutz |
||
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Je ne comprends pas Manoutz, tu veux éviter les valeurs à point et tu mets ceci
Le mieux serait de remplacer des valeurs à . par des blancs avant de concaténer et appliquer la proc format par la suite ou des If, enfin c'est mon avis! |
|
|
00
|
|
|
#12 |
|
Membre Expert
![]() Biostatisticien Inscription : juin 2009 Messages : 1 143 ![]() |
Le dernier else est une solution "au cas où". Supposons que l'exemple fourni par antoine soit non exhaustif (c'est à dire qu'on rentre dans un cas ou A et B et C est vide). Le but dernier "else" est de considérer ce cas de figure, mais j'aurais pu l'affecter à "." comme "Non attribué", ou autre. Toujours est-il que c'est un cas à traiter et il faut être capable de les détecter pour voir si ces cas de figure se présentent.
C'est vrai, on peut formater les valeurs à . par une valeur vide, mais s'orienter vers cette solution peut être vue comme une pratique consistant à masquer le problème, sans le corriger (sans les formats, ta variable nouvelle_colonne est plus longue). C'est tout le danger, d'une manière plus générale, de la représentation visuelle: l'oeil ne voit pas tout! Quoiqu'il en soit, les deux solutions devraient fournir l'apparence escomptée dans ce cas, donc au final, on devrait être bon tout les deux. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com