
Proc Format : 7 points forts de VALUE
février 14, 2008Dans un article précédent, nous avons vu les deux notations pour écrire de nouveaux formats : via un jeu de données, via l’instruction VALUE de PROC format. A présent je vous propose des précisions sur l’instruction VALUE, afin de pouvoir mettre le même texte sur plusieurs valeurs.
1. Virgules pour des données fixes : énumérer les valeurs les unes après les autres en les séparant par des virgules : -1,-2, 1, 2.
proc format;
value in_ex
-1,-2,1,2 = 'Inclus'
0 = 'Exclus';
run;
2. Trait d’union pour les intervalles : fournir un intervalle entre deux valeurs fixes, bornes incluses, avec un trait d’union : 0-1 pour les valeurs entre zéro et un, ou encore -5 – -1 pour les valeurs négatives entre moins cinq et moins un.
proc format;
value intrvl
0-1 = 'Entre 0 et 1, bornes inclus'
value neg_pos
-5--1 = 'Valeurs négatives'
0 = 'Zéro'
1-5 = 'Valeurs positives';
run;
3. Signe inférieur pour exclure les bornes d’un intervalle : fournir un intervalle entre deux valeurs fixes et exclure les bornes en utilisant le signe inférieur : 0 < – < 1.
proc format;
value intrvl
0 <- <1 = 'Entre 0 et 1, bornes exclus';
run;
4. LOW pour définir la borne inférieure d’un intervalle : prendre toutes les valeurs en dessous d’une valeur donnée grâce au mot-clé low : low-60.
proc format;
value inf_lim
low-0 = 'Inférieur ou égal à zéro';
run;
5. HIGH pour définir la borne supérieure d’un intervalle : prendre toutes les valeurs en dessus d’une valeur donnée avec high : 0-high
proc format;
value sup_lim
0-high = 'Supérieur ou égal à zéro';
run;
6. OTHER pour lister les valeurs restantes : enfin il vous reste le mot-clé other pour les données restantes.
proc format;
value autre
0-1 = 'Negative values'
other = 'Pas dans l'intervalle';
run;
7. Définir un format à partir d’un autre format : le mot-clé OTHER en combinaison avec les crochets [] permet de créer un format à partir d’un format existant. Notez que vous pouvez lister autant d’instructions value que vous le souhaitiez dans une seule procédure format.
proc format;
value ny
0 ='NO'
1 ='YES;
value nybis
. = 'MISSING'
.A = 'Not Applicable'
other = [ny.];
run;
Merci pour ton blog. Vraiment bien fait. Sophia, SASseuse à Bruxelles