h1

Webinaire : format vs informat – ou comment en finir avec la confusion

mai 5, 2018

https://xxformat.clickmeeting.com/format-vs-informat/register

Publicités
h1

Alerte ! Soyez les 1ers inscrits à la formation SAS en ligne pour débutant !

avril 23, 2018

SIMPLE : la formation en ligne pour apprendre à programmer en SAS en français est maintenant disponible. Découvrez le détail de la formation SIMPLE ici : http://xxformat.com/fr/produit/simple/. Soyez les premiers inscrits pour bénéficier des cadeaux, soit 4h de suivi individualisé en ligne (d’une valeur de 480€ TTC) et d’une place pour la journée d’immersion à Paris un samedi de septembre/octobre où nous serons 10 personnes maximum (valeur 120€ TTC).

0to1_countdown_formation_sas_internet

h1

11 Astuces SAS – PDF à télécharger

mars 6, 2018

J’ai écris pour la conférence KSFE qui se déroule chaque année début mars dans une ville différente d’Allemagne un PDF contenant 11 astuces de programmation SAS. Vous pouvez le télécharger sur cette page : https://xxformat.com/blog/ksfe-2018/

h1

SAS Support : quelle version de SAS utilisez-vous ? combien de bits sur votre ordinateur ?

mars 6, 2018

L’article est disponible sur http://www.programmeur-pro.com/sas-support/

h1

Le duo transtrn-trimn comme alternative à tranwrd

novembre 20, 2015

La fonction transtrn en combinaison avec la fonction trimn vous permettre d’enlever un mot sans laisser un blanc.

J’ai mis à jour l’article 5 fonctions pour enlever les blancs sur programmeur-pro.com. Découvrez la syntaxe dans la section 4 de l’article.

h1

A partir de quelle lettre y a-t-il une différence : la fonction compare

mai 25, 2015

La fonction COMPARE retourne le nombre zéro si aucune différence n’existe entre deux chaînes de caractères. Sinon elle retourne la position la position du premier caractère différent.

Dans l’exemple ci-dessous, deux datasets sont créés. Une fois combinés, on s’intéresse à la différence entre la variable LABEL_ONE du premier dataset et la variable LABEL_TWO du second dataset. La première différence a lieu sur la deuxième lettre. La variable DIFF prend donc la valeur 2.

data one;
   length start $8 label_one $8;
   start='1';
   label_one='ABC';
run;

data two;
   length start $8 label_two $8;
   start='1';
   label_two='AbC';
run;

data diff;
   merge one two;
   by start;
run;

data diff;
   set diff;
   diff=compare(label_one,label_two);
run;

proc print data=diff;
run;

Vous pouvez ajouter un troisième paramètre dans la fonction si vous ne voulez pas tenir compte des différences de majuscule, de blancs de début de chaîne de caractère,…

Dans quel cas utiliser cette fonction ? Si vous réalisez un rapport listant la différence entre deux valeurs pour pouvoir ensuite les corriger, vous pouvez utiliser cette fonction pour préciser à partir de quel moment la couleur devra changer.

Pour en savoir plus : la documentation SAS 9.2

h1

Retrouver la semaine avec la fonction WEEK

septembre 28, 2014

A partir d’une date SAS, le numéro de la semaine est extrait avec la fonction WEEK. Cette fonction est composée de deux paramètres: la date SAS obligatoire et une lettre entre guillemets (‘U’,’V’ ou ‘W’) facultative. Ne pas mettre de lettre revient à choisir l’option ‘U’.

Les questions à se poser

La première question à se poser est : le premier jour de la semaine est-il un dimanche ou un lundi ?

La seconde question à se poser est : si le 1er janvier est en semaine, est-ce en semaine 0 ou la semaine 1 ?

Illustration de la fonction WEEK avec un exemple.

Prenons l’exemple de la première semaine de janvier 2015.

  • Jeudi 1er janvier
  • Vendredi 2 janvier
  • Samedi 3 janvier
  • Dimanche 4 janvier
  • Lundi 5 janvier
  • Mardi 6 janvier

Le premier jour de la semaine est un dimanche avec la lettre U. Le 1er janvier sera en semaine zéro.

Tandis que les options V et W considèrent le lundi comme le premier jour de la semaine.

  • Avec l’option V, le 1er janvier sera en semaine 1
  • Avec l’option W, le 1er janvier sera en semaine 0

Tester avec du code SAS

data one;
   today='01JAN2015'd;
   output;
   today='02JAN2015'd;
   output;
   today='02JAN2015'd;
   output;
   today='02JAN2015'd;
   output;
   today='02JAN2015'd;
   output;
   today='02JAN2015'd;
   output;
   today='02JAN2015'd;
   output;
run;

data one;
   set one;
   week=week(today);
   weeku=week(today,'U');
   weekv=week(today,'V');
   weekw=week(today,'W');
run;

proc print data=one;
   format today date9.;
run;

Avec les fonctions SAS, il est important de garder en mémoire que le premier jour de la semaine par défaut est le dimanche et non le lundi. Ainsi la fonction WEEKDAY est également touchée par cette règle. Elle donnera un 1 pour le dimanche et un 2 pour le lundi.

Autres lectures