|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 75 ![]() |
Bonjour à tous,
dans le cadre de mon programme, je voudrais réussir à sortir les moyennes de plusieurs variables sans prendre en compte les zéros qu'elles contiennent. je n'arrive pas à avoir ses résultats dans une seule proc. je voudrais au final réunir l'ensemble des moyennes trouvé dans une seule et même table. merci pour votre aide |
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Salut Antoine,
Cet exemple pourrait solutionner ton problème Code :
|
||
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Biostatisticien Inscription : juin 2009 Messages : 1 143 ![]() |
salut,
la proc means ci dessus retire les valeurs manquantes mais pas les 0 (qui n'est pas une valeur manquante). Il faut faire la même chose pour les 0 (et de toute facon, les valeurs manquantes n'interviennent pas dans le calcul d'une moyenne. A contrôler pour l'écart-type). Un problème peut se poser lorsque, en reprenant l'exemple ci dessus, le poids est manquant mais pas la taille. Avec cette syntaxe, cette observation avec une taille non manquante ne sera pas prise en compte. Vu que le but est uniquement de calculer les moyenne, je pencherais plutôt vers une étape data pour réaffecter les valeurs égales à 0 vers manquant. La proc means est alors directe. C'est une solution, mais il y a peut être des options qui gèrent bien ce pb. Manoutz |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Tu as raison Manoutz, ma solution ne traite pas son problème.
Je pense qu'il va falloir créér une table par variable en calculant la moyenne et tout fusionnet à la fin. |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() Biostatisticien Inscription : juin 2009 Messages : 1 143 ![]() |
Pas forcément, c'est ce que je disais au dessus. Vu qu'il calcule que les moyenne, il peut juste remplacer les 0 par des valeurs mq dans une étape data, et c'est plié.
|
|
|
00
|
|
|
#6 |
![]() ![]() Samir SELMANEConsultant en Business Intelligence Inscription : février 2011 Messages : 1 006 ![]() |
peut être avec un array dans une étape DATA, en remplaçant les valeurs 0 par manquantes?
|
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() Biostatisticien Inscription : juin 2009 Messages : 1 143 ![]() |
Passer par des array, c'est un peu faire compliqué pour faire simple je pense. Un if then tout bête (par variable) devrait faire l'affaire.
|
|
|
00
|
|
|
#8 |
![]() ![]() Samir SELMANEConsultant en Business Intelligence Inscription : février 2011 Messages : 1 006 ![]() |
Oui mais si on a plusieurs variables, vaut mieux passer par un array numeric ?
|
|
|
00
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 75 ![]() |
merci je vais essayer de passer par une étape data en remplaçant les 0 par des valeurs manquantes.
|
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() Biostatisticien Inscription : juin 2009 Messages : 1 143 ![]() |
@ SAM: les array numériques est une solution tout à fait viable. Et en terme "d'harmonie de code", c'est peut être mieux d'ailleurs, surtout s'il y a 1500 variables... Mais bon, c'est pas dit que la méthode if then soit plus lente à coder, grâce à la magie du copier coller (et puis je dois reconnaître, je ne suis pas un très grand utilisateur des array
@Antoine: Juste une précision: en remplacant tes 0 par des points, tu changes tes données, il faut en être conscient. Donc c'est mieux de créer un nouveau jeu de données dans l'étape data ou tu fais tes remplacements. Si tu veux rester sur ton jeu de données de base il faudra traiter variable par variable si tu rencontres des problèmes valeurs manquantes que pour certaines variables. Ou chercher s'il existe "l'option qui tue". |
|
|
00
|
|
|
#11 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
C'est plus pratique avec les arrays
Code :
|
||
|
|
00
|
|
|
#12 | ||
![]() ![]() Samir SELMANEConsultant en Business Intelligence Inscription : février 2011 Messages : 1 006 ![]() |
Je propose:
Code :
|
||
|
|
00
|
|
|
#13 |
|
Candidat au titre de Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 75 ![]() |
j'ai coder en utilisant une étape data, je vais essayé avec les array pour voir, mais je vous dit déja merci à tous les 3
|
|
|
00
|
|
|
#14 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Pas mal Sam, ça m'évite deux proc à la c...
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com