|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Astrid Genet Inscription : novembre 2010 Messages : 43 ![]() |
Bonjour,
J'ai un fichier contenant des mesures de température au pas quotidien. Hors certaines mesures sont manquantes et je souhaiterai les remplacer par la moyenne des valeurs encadrantes, c'est à dire faire la moyenne des mesures du jour d'avant et du jour d'aprés dans la case manquante. Lorsque deux (ou plus) jours manquent de façon consécutive, je voudrai mettre dans toutes les cases la même valeur qui serait la moyenne des températures encadrantes. Ca me parait bien compliqué à réaliser. Il faut vraisemblablement partir sur une boucle de type: "if temperature="" then do..." mais je sèche sur la syntaxe de la moyenne des valeurs encadrantes, d'autant plus que dans certains cas on a plusieurs valeurs manquantes consécutives. Ou alors une proc means, mais je ne vois absolument pas non plus la syntaxe qui me permettrait de faire ça. Merci! Astrid |
|
|
00
|
|
|
#2 | ||||
|
Membre éprouvé
![]() Rémi Bousquetresponsable adjoint service stat Inscription : mars 2009 Messages : 334 ![]() |
Voici une table qui correspond je pense à ton problème :
Code :
Et voici une solution à ton problème, basée sur deux tris successifs, l'utilisation d'un retain, de la fonction missing() et de la fonction mean() Code :
Code :
temp_retraite = (temp_inf + temp_sup) /2 ; |
||||
|
|
00
|
|
|
#3 |
![]() ![]() Stéphane Consultant et formateur SAS et Cognos Inscription : avril 2009 Messages : 1 791 ![]() |
ca à l'air bien mais tu peux regarder la proc Expand pour voir si elle ne te simplifierai pas ce travail ?
__________________
N'oubliez pas de cliquer sur lorsque votre problème est réglé !Moteur de recherche dans les papiers SAS |
|
00
|
|
|
#4 |
|
Invité régulier
![]() Astrid Genet Inscription : novembre 2010 Messages : 43 ![]() |
Cette solution marche bien, merci beaucoup de vous être penchés sur la question!
Astrid |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com