
Naviguer dans le blog : les 101 premiers articles
novembre 26, 2008La liste des articles publiés sur ce blog consacré à SAS s’agrandit de semaine en semaine. Voici un récapitulatif des 102 premiers triés par thématique pour parfaire votre navigation.
Découvrir l’environnement de travail
Ces premiers articles invitent le lecteur à découvrir le monde de SAS, son environnement et quelques notions de base comme les LIBNAME.
1. C’est quoi la programmation sous SAS ?
2. Mes raccourcis clavier préférés
3. Et par magie mon jeu de données a disparu (LIBNAME)
Annoter ses programmes
L’utilisation des commentaires est très importante en tout langage de programmation. SAS ne fait pas exception. Voici quelques pistes pour bien documenter votre travail.
5. 3 angles de vue sur les commentaires
7. Structure un programme, un exemple en 5 étapes
Les options des data sets
Les options d’un data set sont toujours listées entre parenthèses. Elles suivent directement le nom du data set. Ces options peuvent être définites aussi bien dans une étape data que dans une procédure. Jusqu’à présent, les options RENAME, KEEP/DROP, OBS, FIRSTOBS ont été présentées. Dans le dernier article vous trouverez en prime des options propres à l’instruction PROC PRINT comme WIDTH=min ou NOBS.
8. Je garde ou je jette? les variables
9. Renommer une variable (RENAME)
10. 3 options pour un aperçu de vos données brutes (PROC PRINT)
Les attributs des variables
Les variables sont caractérisées par leur type (caractère/numérique), leur longueur, leur informat et leur format. On parle alors des attributs de la variable. Jusqu’à présent, la longueur (LENGTH) et les formats ont été les sujets principalement traités.
11. 9 points autour de la notion d’octet
12. Un texte de 32 767 caractères passé au crible
13. 2 méthodes pour de nouveaux formats
14. Proc Format : 7 points forts de VALUE
16. Quel format a la pole position? (FMTSEARCH)
17. Arrondir ses chiffres avant d’appliquer un format
18. Changer la séquence d’affichage des variables
La procédure SQL
La procédure SQL est comparée à l’étape data dans plusieurs articles. Chaque méthode a ces avantages et ces limites. Ici, l’article vous propose de découvrir la syntaxe de base de la procédure SQL.
19. 4 étapes de base pour créer un data set avec PROC SQL
Créer, manipuler et supprimer des jeux de données (SAS data sets)
Saisir les données manuellement, les lire d’un fichier .TXT pour créer un data set, ajouter des lignes d’observations, supprimer des doublons, trier les données, les faire pivoter, supprimer un data set sont autant de manipulation courante dans la vie du programmeur SAS.
20. Créer un data set à partir de données brutes (Line input)
21. Lire des données d’un fichier .TXT sans perdre d’information (les options d’INFILE)
22. Faire des petits avec l’instruction OUTPUT
23. Identifier et supprimer les doublons
24. Trier les données par ordre croissant et décroissant
25. Faire pivoter un data set (un 1er exemple de PROC TRANSPOSE)
26. Copier la structure d’un data set et se séparer des données
27. Supprimer un data set SAS en 6 points (PROC DATASETS)
Grouper les data sets
Combiner les data sets est un travail très important. Une bonne maîtrise de ces techniques est indispensable pour programmer correctement.
29. Insérer quelques nouvelles observations
30. La base de la jointure de deux data sets avec MERGE
31. Oh attention danger avec MERGE et IF
32. Savoir interpréter une note liée au MERGE
33. Produit cartésien : un notion pas si barbare !
34. Mettre à jour un data set à partir d’un autre
La notion de compteur
Pour créer un compteur, il faut dans un premier temps se familiariser avec la notion de RETAIN. Après pour faire varier les données, il faut utiliser les notions de FIRST et LAST. Ces dernières ne fonctionne qu’avec des données triées listées dans une intruction BY. Les deux derniers articles vous donneront des exemples d’application d’un RETAIN.
35. Repérer les 1ers/derniers records (FIRST/LAST)
36. Jongler avec les records grâce aux compteurs
37. Combien de contrats ai-je au total ? (2/5) RETAIN
38. 2 suggestions pour grouper les valeurs d’une variable
Les conditions
QU’il s’agisse d’une étape data ou de la procédure SQL, les conditions représentent une notion incontournable de la programmation SAS. A vous de découvrir les différentes notations, leurs forces et leurs limites.
39. Penser conditionnel (1/3) : La base du IF
40. Penser conditionnel (2/3) : SELECT
41. Penser conditionnel (3/3) : CASE WHEN
Manipuler les observations caractères (Les fonctions caractères)
Au quotidien, le programmeur est amené à utiliser les fonctions caractères. Les articles qui suivent contiennent les fonctions que j’utilise le plus.
42. Majuscule ou minuscule sous SAS
43. 4 fonctions pour enlever les blancs !
44. La concaténation : 4 fonctions SAS 9
45. Les 2 visages de la fonction SUBSTR
46. Scanner une chaîne de caractère et extraire le xème mot
47. Mon petit doigt me dit que… le mot commence en position 2 (Fonction INDEX)
48. Afficher 7h30 du matin sous la forme 07:30
49. Quand compilation et exécution font la différence, un exemple
Les fonctions numériques
Parmi les fonctions numériques vu, on citera les fonctions SUM, LAG, YRDIFF, COUNT et les fonctions propres aux dates comme MDY et DHMS. Parmie celles restent à couvrir, il y a les fonctions INT, FLOOR, CEIL, ABS, ROUND, IFN, IFC.
50. J’additionne des valeurs manquantes
51. Retrouver l’information précédente avec la fonction LAG
52. Retrouver la valeur suivante avec LAG ou un MERGE
53. 2 syntaxes pour calculer un âge
54. Fini le Moyen-Age pour compter les mots
55. Créer une date SAS de 3 manières
Fonctions permettant de jouer avec le type de la variable
Les fonctions PUT et INPUT sont probablement les fonctions les plus populaires sous SAS. Il est en effet très courant de devoir changer le type d’une variable. Cela requiert au préalable une compréhension des formats et informats. La fonction MISSING est abordée dans l’article sur les fonctions numériques (Additionner des valeurs manquantes). On retiendra qu’elle s’applique indifféremment aux variables numériques et caractères.
56. Convertir une variable caractère en numérique et inversement
Reporting
La notion de PROC REPORT a été principalement couverte laissant à plus tard la notion de PROC TABULATE. Le reporting s’améliore sur SAS. Ce qui explique la présence des sujets sur PROC TEMPLATE, ODS RTF et ODS TAGSETS.EXCELXP.
57. 6 notions pour débuter avec PROC REPORT
58. 5 options courantes de PROC REPORT
59. 9 points pour personnaliser ses titres
60. Ajouter des indentations dans un tableau
61. Améliorer l’habillage de vos tableaux (débuter avec PROC TEMPLATE via PROC REPORT)
62. Structurer les sauts de page (ODS RTF)
63. Des marges personnalisées pour vos rapports RTF
64. Mes 1ers pas avec ODS TAGSETS.EXCELXP (1/3)
65. Mes 1ers pas avec ODS TAGSETS.EXCELXP (2/3)
66. Mes 1ers pas avec ODS TAGSETS.EXCELXP (3/3)
67. Passer d’un fichier de l’ODS TAGSET.EXCELXP à un data set SAS avec PROC IMPORT
Les graphiques
Les graphiques sont un sujet peu abordé jusqu’à présent pour deux raisons : il est très peu utilisé dans le secteur pharmaceutique et reste très compliqué sous SAS.
68. 3 propositions pour exporter un graphique
69. Choisir ses couleurs sous SAS > Remplacé par le podcast
Le langage macro
Une des trois méthodes pour répréter une action avec quelques variantes sont les macros.
70. Le luxe des macros, B.A.BA de la syntaxe
71. 3 méthodes pour construire des macros variables sans macro
72. Un besoin ponctuel de variables macros
73. Répéter une action sur plusieurs variables avec le langage macro
74. Mon paramètre de macro est-il rempli ?
75. Combien d’observations dans mon data set ?
Ecrire du texte dans d’autres destinations et travailler avec les métadonnées
Comme alternative aux macros, on trouve le DATA _NULL_ utilisé en combinaison avec les instructions PUT et les dictionnaires. Voici donc quelques notions de base (PUT et dictionnaires) pour après découvrir la puissant de cet outil qui sert au quotidien.
76. Ecrire un texte avec l’instruction PUT
78. Les 2 dictionnaires SAS les plus utilisés: TABLES et COLUMNS
Faire des calculs sous SAS
Les logarithmes et l’écart-type sont des notions qui intéresseront principalement ceux qui travaillent en statistique. PROC MEANS, PROC FREQ et la fonction COUNT dans PROC SQL ont été les principaux sujets relevants de calculs.
79. Des souvenirs de lycée, les logarithmes
80. Mes valeurs sont t’elles proches de la moyenne ? (écart-type)
81. Diriger les sorties d’un PROC MEANS dans un dataset SAS
82. Un tableau à une dimension avec PROC FREQ et ODS OUTPUT
83. Combien de contrats ai-je au total ? (1/5) PROC SQL
84. Combien de contrats ai-je au total ? (3/5) PROC MEANS
85. Combien de contrats ai-je au total ? (4/5) PROC FREQ
86. Combien de contrats ai-je au total ? (5/5) PROC TABULATE
L’environnement UNIX
Alors que dans le milieu universitaire et les entreprises ayant peu de programmeurs SAS, il est courant d’utiliser SAS sous Windows, dans les entreprises de plus grande taille, l’environnement Unix est privilégié. A l’avenir, je vous présenterais quelques commandes que j’ai jusqu’à présent inséré dans mes programmes SAS.
87. Gérer vos dossiers via UNIX, 2 raisons
88. Quel chemin prendre sous Unix?
Se former
Souhaitant rendre accessible SAS au plus grand nombre, je souhaite par les articles de cette section vous donner le plus d’information possibles sur les alternatives à disposition pour se former. Je vais continuer à vous présenter des formations incluant SAS dans leur cursus.
89. Une licence SAS pour 160 euros (Article supprimé : SAS University Edition est maintenant disponible pour tous gratuitement)
90. Mes 3 principales sources de documentation
91. 20h de formation SAS au CNAM de Paris
Vie professionnelle
92. Le monde du programmeur SAS en pharma
93. 6 conseils pour vos emails
94. Choisir ses outils de communication
95. 7 conseils pour collaborer avec un programmeur SAS
Recrutement
Ces deux dernières années m’ont fait voir des candidatures très impersonnelles, envoyées en deux clics pour atteindre son quotas de bonne conscience dans la recherche d’emploi.
On vous parle de grande société alors qu’on est une socitété de 4 personnes. On vous envoie un CV sans savoir ce que la personne recherche (un poste de freelancer ? salarié ? à Paris ? dans toute l’Europe ?, etc.).
Et si j’ai le malheur de demander des détails avant d’avancer dans le processus c’est silence. L’avantage c’est que si j’oublie de répondre à une candidature, je n’entends rien car il n’y a aucun suivi du côté du candidat. lol
Alors s’il vous plaît clarifiez vos objectifs professionnels avant de postuler. Ciblez vos candidatures. Cela vous facilitera la tâche pour mieux connaître la société qui vous intéresse et faire un suivi. N’hésitez pas à de contacter directement la société pour avoir des précisions avant même de postuler.
96. Ce stage est-il fait pour moi ? 6 questions à se poser.
97. Quelle rémunération pour mon stage ?
98. 6 conseils pour un CV SAS débutant
99. Le SAS vous captive ? 8 astuces pour le montrer dans un CV
100. 6 conseils pour un CV bilingue anglais
101. 8 compétences pour un CV grâce aux loisirs
Votre commentaire