|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : octobre 2011 Messages : 35 ![]() |
Bonjour,
J'ai une table qui concerne la consommation médicamenteuse de patients. Mes patients correspondent aux observations et en variable j'ai des noms de médicaments. Chaque patient eput avoir un nombre différent de médicaments. J'aimerai créer une nouvelle variable m'indiquant combient de médicaments consomment les patients. Ma table ressemble à ça : numpatient medic1 medic2 medic3 medic4 ..... 1 X Y 2 A Y C 3 B X D .... comment faire sous excel il me suffit de faire un tableau croisé dynamique mais là???????? merci par avance pour votre aide |
|
|
00
|
|
|
#2 |
![]() ![]() Samir SELMANEConsultant en Business Intelligence Inscription : février 2011 Messages : 1 011 ![]() |
Et ben là c'est la proc tabulate, mais il y a peut être plus simple.
|
|
|
00
|
|
|
#3 | ||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Bonsoir.
SAS ne possède pas directement de fonction pour compter le nombre de variables de type texte qui sont renseignées. Par contre, si on soustrait le nombre de variables vides (comptées avec la fonction CMISS) du nombre total de variables (DIM à condition d'avoir rassemblé toutes les variables dans un Array), alors on a fait le travail. Code :
Olivier |
||
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : octobre 2011 Messages : 35 ![]() |
bonjour,
c'est un peut l'idée que j'avais : je m'étais dit en "francais" dés que tu trouve une variable non renseignée alors tu attribues ce numéro à ma nouvelle variable. Je vais essayer votre solution et vous tiens au courant. Merci, |
|
|
00
|
|
|
#5 | ||
|
Invité de passage
![]() Inscription : octobre 2011 Messages : 35 ![]() |
j'ai essayé mais cela ne fonctionne pas, il me mets
Code :
|
||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : octobre 2011 Messages : 35 ![]() |
ca doit être parce que je suis sous SAS 9.1
|
|
|
00
|
|
|
#7 | ||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Oui, c'est une question de version. CMISS apparaît en v9.2.
Pour la 9.1 on va suivre de plus près ton idée initiale : s'arrêter dès qu'on trouve une valeur manquante. Code :
Bon courage. Olivier |
||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : octobre 2011 Messages : 35 ![]() |
ca fonctionne Super merci!!
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : octobre 2011 Messages : 35 ![]() |
Bonjour,
en fait ca fonctionne mais il y a un petit soucis : c'est que pour les patients qui n'ont aucun médicament ca me met 0. Il faudrait que cela notre à la place . pour considérer comme valeur manquant dans les stat. |
|
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Hé bien juste avant le RUN, ajoutons
Bon courage. Olivier |
|
|
00
|
|
|
#11 | ||
|
Invité de passage
![]() Rabie RazgallahARC Inscription : octobre 2011 Messages : 2 ![]() |
Bonsoir
j'ai suivi le fil de la discussion pour exactement la même question mais malheureusement la nouvelle variable de comptage ne se crée par et une erreur apparait. Au fait, j'ai douze variables distinctes, qui comportent les modalités (1 ou 2 ou missing). Je souhaite compter le nombre des valeurs valides pour l'ensemble des variables exemple de mon fichier patient ovophas1 ovophase2 ovophas3....etc... ovophase12 1 1 1 2 1 2 . 2 1 2 3 1 . . 2 Ce que je souhaite avoir à la fin pour chaque patient, le nombre des valeurs valides pour toutes les variables (ici patient 1 = 4, patient 2 =3 et patient 3 = 2). j'ai fait exactement le même code que vous mais il y a une erreur, qui apparait, il ne reconnait pas la nouvelle variable de comptage Code :
|
||
|
|
00
|
|
|
#12 |
|
Invité de passage
![]() Rabie RazgallahARC Inscription : octobre 2011 Messages : 2 ![]() |
le message est parti sans que je puisse vous remercier d'avance pour votre aide
bonne soirée à tous |
|
|
00
|
|
|
#13 | ||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Bonjour Rabie.
J'ai l'impression que dans ton cas les variables à compter sont numériques. Alors que dans le reste de cette discussion il s'agissait de noms de médicaments (donc du texte). Tu peux essayer deux solutions : 1) en enlevant le $ dans ARRAY. C'est de cette manière qu'on indique que l'array contient des variables texte. Sans $ ce sont des données numériques. Un array ne peut pas contenir à la fois des variables texte et des variables numériques. 2) avec juste Code :
Bon courage. Olivier |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com