|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : novembre 2011 Messages : 40 ![]() |
Bonjour,
Je dispose de la table suivante dans laquelle il manque quelques valeurs, notament dans les lignes "Total" : Code :
Code :
Code :
Je ne vois pas comment résoudre le problème, si ce n'est avec une macro avec un paramètre "Variable" qui prend le nom de chaque variable (donc 4 exécutions de la macro consécutives). Cette méthode fonctionne mais elle prend énormément de temps puisque j'ai une centaine de variables à traiter ! Une autre idée ?! Merci à vous. |
||||||
|
|
00
|
|
|
#2 |
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 793 ![]() |
Pourquoi tu ne calculerais pas TOTAL par toi-même et que tu le remettrais dans la table par un UPDATE SQL par exemple ?
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
|
00
|
|
|
#3 | ||||
|
Membre éclairé
![]() statisticien Inscription : mai 2011 Messages : 215 ![]() |
Bonjour,
Tu peux tout simplement tout recalculer directement par une proc summary non ? Enfin si ton fichier est "propre" comme il semble l'être dans ton exemple. Code :
Code :
Tu peux ensuite fignoler, en remplaçant les valeurs manquantes qui restent dans tes variables par des 0. |
||||
|
|
10
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : novembre 2011 Messages : 40 ![]() |
@datametric : Parce que j'ai 70 000 observations et que les valeurs manquantes sont aléatoirement réparties entre les variables !!!
@jerome_pdv2 : Merci, je ne connaissais pas cette proc. Je teste et vous tiens au courant. Merci ! |
|
|
00
|
|
|
#5 | ||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 472 ![]() |
Pour info c'est la même que la proc MEANS avec une option NOPRINT.
De mon côté, si je dois manipuler la variable _TYPE_, je préfère autant qu'elle soit en texte (valeurs 0 et 1 selon les variables de CLASS utilisées pour ce niveau de groupement) plutôt qu'en binaire. J'ajoute donc CHARTYPE dans la proc MEANS ou SUMMARY et le code devient : Code :
|
||
|
|
00
|
|
|
#6 |
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 793 ![]() |
@Helixe : la méthode de Jérôme consiste à recalculer les sous-totaux hebdomadaires comme je te le proposais. Qu'importe qu'ils soient manquants aléatoirement ou non, les nouveaux remplaceront les anciens.
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
|
00
|
|
|
#7 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : novembre 2011 Messages : 40 ![]() |
Merci à vous tous,
Ca marche bien effectivement. Par contre, y a t il un nombre de lignes limites pouvant être traitées ? Parce que mon fichier contient 64800 lignes et la proc summary supprime les 1800 dernières (environs). Y'a t il un moyen de contourner ce problème ? |
|
|
00
|
|
|
#8 |
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 793 ![]() |
Qu'entends tu par "supprimer" ? c'est à la lecture ou au final ?
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
|
00
|
|
|
#9 | |
|
Membre éclairé
![]() statisticien Inscription : mai 2011 Messages : 215 ![]() |
Citation:
Par contre si tu as des choses qui disparaissent sans erreurs dans la log, c'est peut-être que tu as des valeurs manquantes dans l'une ou plusieurs des variables de l'instruction class Tu peux rajouter missing dans l'appel de la procèdure pour voir ? Code :
proc summary DATA=test(WHERE=(jour^='Total')) MISSING; |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com