Macro
Automatisation SAS : Lancez tout un dossier de scripts en un seul clic grâce à CALL EXECUTE et PIPE

Macro permettant d'inclure et d'exécuter tous les programmes SAS situés dans un répertoire et ses sous-répertoires.

Voir le code
Macro
SAS Macro : Manipulez vos dossiers et fichiers sans aucune commande système externe (X/System)

Script macro pour lister et compter les fichiers dans un répertoire donné.

Voir le code
Reporting
SAS ODS & Data Step : Exportez vos données vers Excel/CSV en un éclair après les avoir nettoyées

Démonstration de l'extraction de sous-chaînes et export de données via ODS.

Voir le code
Accès aux données
Data Delivery : Transformez vos analyses SAS en API de téléchargement temps réel sans stocker de fichiers

Génération de données de test et exportation directe au format CSV vers le flux de sortie web.

Voir le code
ETL
SAS Data Step : Comment accéder aux valeurs de la ligne précédente grâce à la fonction LAG

Script illustrant la création de données, le tri et l'utilisation de la fonction LAG pour accéder aux observations pr...

Voir le code
Administration
Administration SAS Viya : Visualisez toutes les sessions actives du serveur en 3 lignes de code

Ce script liste les sessions CAS actives et exporte les résultats dans une table SAS locale.

Voir le code
Macro
Automatisation SAS : Générez vos fichiers CSV en une seule ligne de code avec cette macro universelle

Macro utilitaire pour exporter une table SAS vers un fichier CSV via PROC EXPORT.

Voir le code
Reporting
SAS ODS RTF : L'astuce simple pour mixer Portrait et Paysage dans un même document Word

Exemple de changement d'orientation de page (Portrait/Paysage) au sein d'un même document RTF généré par ODS.

Voir le code
Reporting
Reporting Automatisé : Publiez vos "Matrices XXL" sans casser la mise en page (Hack du Registre SAS)

Exemple de configuration de la taille du papier (A3) pour une sortie ODS RTF.

Voir le code
Reporting
Tuto SAS GTL : Contrôlez le positionnement de vos étiquettes (Fini le placement aléatoire !)

Définition et rendu d'un graphique de dispersion personnalisé utilisant le langage de modèle de graphique (GTL).

Voir le code
Macro
Tuto Macro SAS : Identifiez instantanément les nouvelles tables créées dans WORK (Le Snapshot Différentiel)

Macro utilitaire pour identifier les tables SAS nouvellement créées dans la bibliothèque WORK entre deux étapes.

Voir le code
ETL
Tuto SAS : Oubliez PROC TRANSPOSE ! Pivotez vos données avec le duo Array & Retain

Génération de données simulées et transformation complexe utilisant des tableaux et la rétention de variables.

Voir le code
Macro
Tuto Macro SAS : Alignez votre texte "Bord à Bord" automatiquement (Idéal pour des logs propres)

Macro utilitaire permettant d'aligner du texte à gauche et à droite sur une largeur définie.

Voir le code
Programmation
Data Science & SAS : Ne rédigez plus jamais vos boucles conditionnelles à la main

Macro utilitaire qui génère et affiche des blocs d'instructions IF-THEN-DO dans la log SAS pour une variable et une l...

Voir le code
Programmation
SAS Macro : Automatisez l'inventaire de vos bibliothèques avec SASHELP.VTABLE

Macro générant une liste de tous les jeux de données présents dans une bibliothèque SAS donnée via une variable macro...

Voir le code
Macro
Data Management : Localisez vos sources de données instantanément dans votre code

Macro utilitaire pour récupérer le chemin système associé à un libref SAS donné.

Voir le code
Macro
SAS Macro : 3 fonctions indispensables pour manipuler vos chaînes de caractères

Définition de trois macros utilitaires (AHGstartwith, AHGtestANDcut, AHGmask) destinées à la manipulation et à la vér...

Voir le code
Statistique
Échantillonnage Probabiliste : Comment extraire un échantillon représentatif et sans biais de vos Big Data ?

Sélection d'un échantillon aléatoire de 10% à partir d'un jeu de données existant.

Voir le code
ETL
SAS : Comment modéliser un jeu de données géographiques (Dataset NYC)

Script de création de jeux de données sur la criminalité par arrondissement à New York.

Voir le code
Manipulation de données
Le Piège Classique du "Double WHERE" qui Fausse vos Résultats

Exemple pédagogique montrant le comportement de multiples instructions WHERE dans un Data Step.

Voir le code
Statistique
Feature Engineering : Comment transformer vos variables continues en segments stratégiques pour vos analyses

Script de catégorisation des ventes de chaussures et analyse statistique simple.

Voir le code
Statistique
EDA avec SAS : Comment automatiser le profilage statistique de vos datasets (Metrics & Summaries)

Script illustrant la création de jeux de données et l'analyse statistique de base sur des données internes et des exe...

Voir le code
Statistique
Régression Logistique : Maîtrisez l'interprétation de vos Odds Ratios en fixant vos modalités de référence

Exemple de spécification manuelle du niveau de référence pour une variable catégorielle dans une procédure statistique.

Voir le code
Manipulation de données
Tuto SAS : Calculez l'évolution d'une ligne à l'autre sans prise de tête (La puissance de LAG)

Script calculant la différence et le ratio entre la valeur courante d'une variable et sa valeur à l'observation précé...

Voir le code
ETL
Tuto SAS : Fusionnez vos chaînes de caractères proprement (L'art du TRIM et de la Concaténation)

Création d'un jeu de données par concaténation de colonnes texte issues de données internes.

Voir le code
ETL
Tuto SQL SAS : L'erreur classique du filtrage sur un FULL JOIN (WHERE vs Dataset Option)

Génération de données aléatoires et comparaison de deux approches pour filtrer des données lors d'une jointure complè...

Voir le code
Administration
SAS & OS : Comment piloter vos programmes via les variables d’environnement

Récupère les variables d'environnement du système d'exploitation et les convertit en macro-variables SAS.

Voir le code
Administration
Data Science : Versionnez vos projets SAS comme un Pro avec Git

Initialisation des variables macro nécessaires pour l'authentification et la connexion à un dépôt Git.

Voir le code
Data Manipulation
SAS : Pourquoi vous devriez toujours utiliser la fonction SUM pour vos calculs

Démonstration de l'utilisation de la fonction SUM pour additionner des variables contenant des valeurs manquantes.

Voir le code
Reporting
SAS SGPLOT : Personnalisez vos graphiques de dispersion comme un expert

Script générant des données aléatoires pour créer un nuage de points personnalisé.

Voir le code
Statistique
Distribution et Inférence : Comment valider la normalité de vos données avant modélisation ?

Script d'analyse statistique descriptive utilisant la procédure UNIVARIATE pour examiner les distributions des variab...

Voir le code
Macro
SAS Performance : IF vs WHERE, quel est le plus rapide pour filtrer vos données ?

Script générant des données de test et exécutant une macro pour comparer deux méthodes de filtrage (IF vs WHERE) de m...

Voir le code
Programmation
Data Cleaning : Maîtrisez la logique de transformation textuelle complexe

Script SAS définissant une macro pour inverser une chaîne de caractères et effectuant des tests simples d'affichage d...

Voir le code
Statistique
Puissance Statistique : Ne laissez plus le hasard décider de la taille de vos échantillons (T-test & GLM)

Script réalisant des analyses de puissance et de calcul de taille d'échantillon. Il prépare d'abord un jeu de données...

Voir le code
Reporting
PROC FORMAT : Maîtrisez l'imbrication de formats pour des rapports dynamiques

Création de formats personnalisés avec imbrication logique et test d'affichage.

Voir le code
Statistique
Analyse de Tendance : Détectez les relations dose-réponse significatives dans vos tables de contingence

Script analysant la relation entre la consommation d'alcool et les malformations via une création de données internes...

Voir le code
Statistique
Inférence Statistique : Comment détecter une relation dose-réponse grâce aux scores Ridit ?

Analyse de l'association entre la consommation d'alcool maternel et les malformations congénitales.

Voir le code
Statistique
Inférence Statistique : Comment modéliser les probabilités binaires avec la fonction de lien Logit dans GENMOD ?

Script illustrant la création d'un jeu de données cliniques (AIDS) suivi d'une modélisation statistique utilisant une...

Voir le code
Statistique
Modèles Log-Linéaires : Analysez les interactions complexes dans vos tables de contingence via la loi de Poisson

Création d'un jeu de données et ajustement d'un modèle de régression de Poisson.

Voir le code
Statistique
Analyse de réponse multinominale : Comment modéliser les probabilités de croyance avec les Logits ?

Script effectuant une analyse de données catégorielles (modèle logit) sur des croyances en fonction de variables démo...

Voir le code
Statistique
Régression Ordinale : Comment analyser les tendances d'opinion avec les modèles Log-Linéaires ?

Script créant un jeu de données d'idéologie politique et effectuant une analyse de données catégorielles via PROC CAT...

Voir le code
Manipulation de données
SAS Data Step : Comment lire des données réparties sur plusieurs lignes

Script illustrant la lecture de données multi-lignes, le calcul de variables dérivées et l'application de formats d'a...

Voir le code
Statistique
Échantillonnage de Gibbs et MCMC : Comment simuler des distributions a priori complexes ?

Exemple d'utilisation de la procédure MCMC pour échantillonner une distribution a priori normale.

Voir le code
Manipulation de données
SAS : Maîtrisez les fonctions CEIL et FLOOR pour des arrondis parfaits

Script de démonstration des fonctions d'arrondi CEIL et FLOOR sur des données numériques.

Voir le code
Statistique
Test d'Hypothèse : Comment valider la significativité des écarts entre deux populations ?

Génération de données aléatoires et réalisation d'un test t de Student pour comparer deux groupes.

Voir le code
ETL
SAS : Apprenez à explorer les tables systèmes et à créer vos propres bibliothèques

Script de démonstration affichant une table système et créant une table personnalisée.

Voir le code
Statistique
Inférence Statistique : Test unilatéral et mesures répétées, comment prouver un effet significatif ?

Exécution d'un test T pour échantillons appariés afin de comparer des mesures baseline et caféine.

Voir le code
Programmation
SAS Reporting : Maîtrisez la mise en forme conditionnelle avec PROC FORMAT

Création de formats utilisateurs pour le 'traffic lighting' (mise en évidence conditionnelle par couleur).

Voir le code
Manipulation de données
SAS Security : Comment chiffrer et protéger vos datasets par mot de passe

Exemple de création d'une table SAS chiffrée et protégée par mot de passe.

Voir le code
Reporting
SAS PROC REPORT : Créez des synthèses financières dynamiques en un clin d'œil

Génère un rapport calculant le profit total pour chaque année au sein de chaque gamme de produits.

Voir le code

Derniers codes ajoutés

Optimisation SAS : Maîtriser FULLSTIMER pour auditer vos performances
Ce document explique comment collecter et interpréter les statistiques de performance dans SAS, en utilisant les options système FULLSTIMER et STIMER pour analyser le temps réel, le temps CPU, l'utilisation de la mémoire et les I/O.
Optimisation de la performance
Guide SAS : Comment gérer et corriger les erreurs de données (Invalid Data)
Ce document explique les erreurs de données qui surviennent lorsque certaines valeurs de données ne sont pas appropriées pour les instructions SAS spécifiées dans le programme. Par exemple, si une variable est définie comme numérique mais que sa valeur est de type caractère, SAS génère une erreur de données.
Débogage
Maîtriser le débogage SAS : Points-virgules, guillemets et option NOAUTOCORRECT
Les erreurs de syntaxe surviennent lorsque les instructions d'un programme ne sont pas conformes aux règles du langage SAS. Cet article fournit des exemples et des explications sur la manière dont SAS gère ces erreurs, y compris les mots-clés mal orthographiés et les points-virgules manquants, ainsi que des conseils pour les résoudre.
Débogage
SAS DATA Step : Maîtriser la variable IORC et SYSRC pour un code robuste
Cette documentation fournit des exemples pratiques pour le débogage d'erreurs en programmation SAS, en se concentrant sur la gestion des conditions inattendues et des erreurs logiques dans les étapes DATA.
Débogage
Log SAS : Pourquoi votre programme tourne mais produit des erreurs (Warning & Notes)
Ce document décrit les erreurs qui surviennent lors de l'exécution d'un programme SAS traitant des valeurs de données. La plupart de ces erreurs produisent des avertissements ou des notes dans le journal SAS.
Débogage
Variables non initialisées : Sécurisez votre code SAS avec l'option VARINITCHK
Les erreurs sémantiques surviennent lorsque la forme des éléments d'une instruction SAS est correcte, mais que les éléments ne sont pas valides pour cette utilisation. Elles sont détectées à la compilation et peuvent activer le mode de vérification de syntaxe.
Débogage
Vitesse vs Mémoire : Comment configurer SAS pour une performance CPU maximale ?
Ce document fournit des techniques pour optimiser les performances du processeur (CPU) dans les programmes SAS, notamment en gérant l'utilisation de la mémoire, en réduisant les opérations d'entrée/sortie (I/O), en stockant les programmes compilés, en optimisant les chemins de recherche des fichiers exécutables SAS, en spécifiant les longueurs de variables et en utilisant le traitement parallèle. Il aborde également l'optimisation de la compilation des programmes SAS.
Optimisation de la performance
Log SAS illisible ? Optimisez vos audits avec MSGLEVEL et les variables IORC
Ce document décrit diverses méthodes et outils pour le débogage des programmes SAS, y compris l'identification et la résolution des erreurs de syntaxe, des erreurs sémantiques et des erreurs d'exécution. Il présente également les modes de point de contrôle et de redémarrage pour les processus par lots, ainsi que le mode de vérification de la syntaxe.
Débogage
SAS : Maîtrisez l'instruction MODIFY pour mettre à jour vos tables sans les dupliquer
Cet exemple illustre comment utiliser l'instruction `MODIFY` dans un DATA Step pour mettre à jour un jeu de données principal (`master`) à partir d'un jeu de données de transaction. Les observations sont appariées sur une variable clé (`partNumber`), permettant la modification d'observations existantes et l'ajout de nouvelles observations.
ETL
SAS Viya : Comment charger et manipuler vos données in-memory avec PROC CASUTIL
Cet exemple utilise trois instructions PROC CASUTIL pour charger, partitionner et modifier une table de données dans l'environnement SAS Cloud Analytic Services (CAS).
Manipulation de données CAS