Posts Tagged ‘SAS’

h1

Webinaire Live : les 5 indispensables pour écrire vos premiers programmes

décembre 6, 2017

7 jours – 7 dates

Du jeudi 8 décembre au mercredi 14 décembre à 19h58
(seulement 25 places maximum par session)

  1. jeudi 8 décembre à 19h58 – S’inscrire gratuitement
  2. vendredi 9 décembre à 19h58 – S’inscrire gratuitement
  3. samedi 10 décembre à 19h58 – S’inscrire gratuitement
  4. dimanche 11 décembre à 19h58 – S’inscrire gratuitement
  5. lundi 12 décembre à 19h58 – S’inscrire gratuitement
  6. mardi 13 décembre à 19h58 – S’inscrire gratuitement
  7. mercredi 14 décembre à 19h58 – S’inscrire gratuitement

 

Voir toutes les dates | N’hésitez pas à partager autour de vous !

 

Objectif

Repérez les 5 indispensables que vous pouvez mettre en place pour écrire des programmes plus lisibles, pour travailler de manière structurée et anticiper les besoins de synchronisation avec votre documentation de validation, quelque soit l’industrie (finance, marketing, pharma…).

 

Au programme

19h45 : Accès à la salle

19h58 : Début du Webinar – Véronique Bourcier

  • Introduction
  • Les 5 indispensables pour écrire vos premiers programmes que vous n’apprendrez jamais sur les bancs universitaires.
  • Cadeau spécial STAGE pour tous les participants
  • Lancement de mon nouveau produit pour les débutants/faux-débutants en langage SAS
  • Questions-Réponses

 

Voir toutes les dates | N’hésitez pas à partager autour de vous !

Publicités
h1

Une formation gratuite d’introduction à SAS en deux clics

août 20, 2016

Bonjour,

La plateforme de formation en ligne : programmeur-pro.com vient de bénéficier d’un petit lifting.

Elle contient la formation gratuite : « Introduction à SAS pour vrai débutant « .

Introduction à SAS pour vrai débutant, le descriptif:

Ce programme s’adresse aux vrais débutants en langage SAS. Vous devez travailler en collaboration avec des programmeurs SAS, faire tourner des programmes existants ou naviguer dans une table SAS, ce programme d’introduction est fait pour vous.

Ici, on vous donne les outils de base pour gagner en autonomie dans votre travail, acquérir une meilleure compréhension des contraintes de la programmation et acquérir le vocabulaire pour dialoguer avec des programmeurs.

Ce programme est composé de 7 unités.

Pour créer un compte, cliquez sur S’inscrire. Confirmez ensuite votre inscription en cliquant sur le mail que vous recevrez.

Si vous pensez que dans votre entourage d’autres personnes pourraient bénéficier de ce programme, alors partagez le lien : programmeur-pro.com

A très bientôt sur la plateforme.

Véronique

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

S’informer des prochains rendez-vous via le calendrier Google

septembre 21, 2013

Via l’agenda Google du blog, soyez informé des prochains rendez-vous.

 

 

h1

Mardi 16 avril 2013 – 13h30-16h30 – Québec

avril 14, 2013

Communiqué du Club des utilisateurs SAS de Québec :

Le Club des utilisateurs SAS de Québec vous convie à sa 14e rencontre qui aura lieu le mardi 16 avril prochain à 13h30. Cette rencontre aura lieu à l’auditorium J-P-Tardif (local 1334, pavillon La Laurentienne, Université Laval).

Horaire des présentations

  • 13h30 – Mot de bienvenue
    Louis-René Rheault, Université Laval
  • 13h40 – La puissance peu connue des tables hash
    Jean Hardy et Claude Leblanc, Services conseils Hardy
    inc. schardy.qc.ca
  • 14h20 – SAS/Access pour ODBC
    Souleymane Bah, Secrétariat du Conseil du Trésor
  • 15h20 – Thérapie de groupe SAS – Ces vulnérabilité (warning, erreurs) que vous n’êtes plus capables de voir
    Yankori Ima et Daniel Villeneuve, COI www.coi.ca
  • 16h00 – Élection du conseil d’administration 2013-2014
    Président d’élection : Geoffroy Côté
  • 16h15 – Mot de la fin et tirage de prix de présence
    Une description de ces présentations est disponible sur notre site Web :
    www.clubsasquebec.ca/conferences.html

L’inscription est gratuite avec réservation de sa place.

Élections

Chaque année nous procédons à l’élection du conseil d’administration. Toute personne intéressée peut poser sa candidature en écrivant à l’adresse :
info@clubsasquebec.ca<mailto:info@clubsasquebec.ca>. Veuillez mentionner le poste qui vous intéresse parmi les suivants :

  • Vice-président (mandat de 1 an)
  • Secrétaire (mandat de 1 an)
  • Autre membre du conseil (mandat de 1 an)

Le président actuel, Louis-René Rheault, est en mandat jusqu’au printemps 2014.

Au plaisir de vous voir le 16 avril!
Louis-René Rheault
Président 2012-2014 du Club SAS de Québec

h1

Passer de CLASS CLAS à « CLASS » « CLAS » dans une macro variable

février 1, 2013

Mettre toutes les mots contenus dans une macro variable entre guillemets (quote en anglais) est un tâche plus fréquente qu’elle n’y paraît.
Une vois le code écrit, il est souvent plus rapide de faire du copier/coller et ensuite de modifier. Voici un exemple où DSN=CLASS CLAS sert à créer DSN_QUOTE= »CLASS » « CLAS ».

1. Exemple dans une macro

Dans l’exemple, la macro est PRINTDSN. Elle a pour tâche d’imprimer dans la log tous les datasets présents dans la bibliothèque SASHELP qui sont cités dans le paramètre de macro DSN, s’ils existent.

%macro printdsn (dsn=);

%let dsn      =upcase(&dsn.);
%let dsn_quote=%sysfunc(tranwrd(%nrstr(%")&dsn.%nrstr(%"),%str( ),%str(" ");

proc sql;
 create table ref as
 select memname
 from dictionary.tables
 where upcase(libname)='SASHELP' and
       upcase(memname) in (&dsn_quote.);
quit;

data _null_;
 set ref;
 call execute ('proc print data=' || memname || ';');
 call execute ('run;');
run;
%mend printdsn;
%printdsn(dsn=class clas);

Pour ma part j’ai pris l’habitude de mettre le contenu des macros paramètres en majuscule, et ce dès le début du programme, sauf besoin spécifique contraire. Ceci explique la ligne %let dsn=upcase(&dsn.);

De plus j’ai pris l’habitude de rajouter le suffixe _quote au nom de la macro variable. Dans notre exemple il y a la macro variable DSN mise en majuscule. Cette variable est ensuite mise entre guillemets.

La macro fonction %sysfunc() permet d’utiliser la fonction tranwrd dans une expression macro. La fonction tranwrd est composée de trois paramètres :

  1. le texte d’origine entre guillemets
  2. le partie de texte à remplacer dans cette chaîne de caractères
  3. le texte de remplacement

2. Le même exemple sans macro

L’exemple est présenté dans une macro. Pour tester le code, un simple %let et %put feront l’affaire. Le résultat s’affiche alors dans la log.

%let dsn=CLASS CLAS;
%let dsn_quote=%sysfunc(tranwrd(%nrstr(%")&dsn.%nrstr(%"),%str( ),%str(" ");
%put &dsn_quote.;
h1

SAS 9.2. : WARNING avec PROC SQL et l’option UNDO_POLICY=NONE

janvier 6, 2013

Depuis SAS 9.2, un nouveau WARNING apparaît dans la log quand le nom de la table SAS d’entrée est le même que le nom de la table SAS de sortie. Pour éviter ce message, l’option undo_policy=none est à ajouter dans l’instruction proc sql;. SAS support prévient néanmoins que l’usage du même nom en entrée et en sortie présente un risque et que l’option enlève l’avertissement mais pas le risque.

1. Le message dans la log

WARNING: CREATE TABLE statement recursively references the target table

 

2. Exemple

Ce code générerait le warning avec SAS 9.2 si l’option undo_policy=none n’était pas utilisée.

proc copy in=sashelp out=work;
   select class;
run;

proc sql undo_policy=none;
   create table class as 
   select name, age
   from class;
quit;

 

En savoir plus