Résumer et explorer vos données avec PROC MEANS, UNIVARIATE et FREQ

Cet article en deux mots :

Passez enfin de la gestion de données à l’analyse concrète ! Ce guide ultime vous dévoile comment faire parler vos chiffres grâce au trio de choc PROC FREQ, MEANS et UNIVARIATE. Apprenez à croiser vos variables, calculer vos indicateurs clés et débusquer les valeurs aberrantes en un clin d'œil pour transformer vos datasets bruts en véritables outils de décision stratégique.

C’est la fin de notre série d'articles sur nicolas-housset.fr ! Vous savez désormais importer vos données, les sauvegarder, les exporter, les fusionner et même les tordre dans tous les sens avec les Arrays. Félicitations, vous êtes officiellement le chef d'orchestre de votre base de données.

Mais soyons honnêtes : avoir des données propres, c’est bien. Les faire parler, c’est mieux ! À quoi sert de compiler toutes les ventes de notre boulangerie si ce n'est pas pour savoir si les pains au chocolat rapportent plus que les croissants ? Le guide de Neil Spencer nous enseigne que SAS possède un trio de choc pour faire exploser la vérité au grand jour : les procédures FREQ, MEANS et UNIVARIATE {A98989CA}.pdf].

Avant de lancer l'artillerie lourde, créons un petit jeu de données récapitulatif pour nos tests :

SAS


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* Auteur : Nicolas Housset
Objectif : Jeu de données pour l'analyse statistique de la boulangerie */


DATA ventes_semaine;
INPUT jour $10. categorie $15. quantite ca_euros;
DATALINES;
Lundi Viennoiserie 45 54.00
Lundi Pain 120 132.00
Lundi Patisserie 15 52.50
Mardi Viennoiserie 50 60.00
Mardi Pain 110 121.00
Mercredi Viennoiserie 40 48.00
Mercredi Pain 130 143.00
Mercredi Patisserie 20 70.00
;
RUN;

1. PROC FREQ : Le compteur compulsif

La procédure FREQ (pour Fréquence) est l'outil de base pour analyser vos variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. qualitatives (le texte, les catégories). Elle sert tout simplement à compter {A98989CA}.pdf].

Vous voulez savoir combien de fois chaque catégorie de produit apparaît dans vos lignes de ventes ? Utilisez l'instruction TABLES.

SAS


1
2
3
4
5
* Analyse simple à une dimension ;
PROC FREQ DATA = ventes_semaine;
TABLES categorie;
TITLE "Répartition des lignes de ventes par catégorie";
RUN;

Le tableau croisé dynamique façon SAS : C'est ici que PROC FREQ devient magique. En ajoutant un astérisque * entre deux variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage., SAS va générer un tableau croisé (Cross-tabulation) {A98989CA}.pdf].

SAS


1
2
3
4
5
6
7
8
* Tableau croisé avec options de nettoyage ;
PROC FREQ DATA = ventes_semaine;
* On croise les Jours avec les Catégories ;
* Les options NOPERCENT NOROW NOCOL enlèvent les pourcentages
* pour ne garder que les vrais chiffres et alléger le tableau final ;
TABLES jour * categorie / NOPERCENT NOROW NOCOL;
TITLE "Tableau croisé : Jours vs Catégories";
RUN;

2. PROC MEANS : Le couteau suisse du comptable

Si PROC FREQ gère les mots, PROC MEANS est le roi des chiffres {A98989CA}.pdf]. Il calcule la moyenne (MEAN), la somme (SUM), le minimum (MIN), le maximum (MAX) et l'écart-type (STD) de vos variablesColonnes d'une table SAS contenant des données spécifiques (numériques ou caractères). Elles possèdent des attributs comme le nom, le type, la longueur, l'étiquette et le format d'affichage. numériques.

L'instruction vitale ici est VAR (pour indiquer quelles colonnes chiffrées calculer) et CLASS (pour découper ces calculs par groupes).

SAS


1
2
3
4
5
6
7
8
* Analyse des chiffres d'affaires et quantités ;
PROC MEANS DATA = ventes_semaine N SUM MEAN MIN MAX;
* On regroupe les calculs par catégorie de produit ;
CLASS categorie;
* On cible nos deux variables mathématiques ;
VAR quantite ca_euros;
TITLE "
Moyennes et Sommes par Catégorie de produit";
RUN;

Note : La petite lettre N dans la première ligne demande à SAS d'afficher le nombre d'observations valides utilisées pour le calcul.

3. PROC UNIVARIATE : L'inspection sanitaire (chasse aux valeurs extrêmesDonnée s'écartant significativement des autres observations d'un échantillon. En SAS Viya, elle peut fausser les statistiques et nécessite un traitement (exclusion ou winsorisation) via CAS.)

PROC MEANS est parfait pour un rapport mensuel. Mais si vous recevez de nouvelles données brutes et que vous voulez vérifier qu'il n'y a pas d'aberrations, il vous faut PROC UNIVARIATE {A98989CA}.pdf].

Cette procédure est très bavarde. Elle va tout vous dire sur votre variable numérique : la médianeValeur centrale divisant une série de données ordonnées en deux groupes égaux (50 % au-dessus, 50 % en dessous). Contrairement à la moyenne, elle est robuste face aux valeurs aberrantes., la varianceMesure statistique de la dispersion des données indiquant l'écart carré moyen par rapport à la moyenne. Une variance élevée traduit une grande hétérogénéité des observations autour du centre., l'asymétrieMesure statistique (skewness) évaluant le manque de symétrie d'une distribution de données dans SAS Viya. Elle indique si les observations se concentrent à gauche ou à droite de la moyenne., les quantilesLes quantiles sont des valeurs divisant un jeu de données trié en intervalles égaux. Ils permettent d'analyser la distribution et la dispersion des données (ex: quartiles pour des segments de 25%)., et surtout : les valeurs extrêmesDonnée s'écartant significativement des autres observations d'un échantillon. En SAS Viya, elle peut fausser les statistiques et nécessite un traitement (exclusion ou winsorisation) via CAS. (Extreme Observations) {A98989CA}.pdf]. Si un vendeur a tapé "15000" au lieu de "15" pour le nombre de religieuses au chocolat vendues, PROC UNIVARIATE va immédiatement l'isoler tout en bas de son rapport.

SAS


1
2
3
4
5
6
7
8
* Audit complet de notre chiffre d'affaires ;
PROC UNIVARIATE DATA = ventes_semaine;
VAR ca_euros;

* On demande même un petit histogramme textuel en prime ! ;
HISTOGRAM;
TITLE "
Analyse approfondie (Distribution et Valeurs Extrêmes) du CA";
RUN;

💡 L'astuce du pro : PROC UNIVARIATE génère énormément de tableaux dans la fenêtre de résultats. Si vous ne cherchez qu'une information précise, utilisez le système ODS (Output Delivery System) pour ne sélectionner que le tableau qui vous intéresse. Mais ça... c'est une technique que nous aborderons dans une autre vie !

Clap de fin !

C'est ainsi que s'achève notre grand tour d'horizon de la programmation SAS, inspiré par l'excellent ouvrage de Neil Spencer. De la lecture de la Log aux statistiques descriptives, vous avez désormais toutes les cartes en main pour dompter n'importe quel dataset rebelle.

Merci d'avoir suivi cette série sur nicolas-housset.fr. N'hésitez pas à fouiller dans les archives du blog pour revoir un point technique, et surtout : n'oubliez jamais vos points-virgules ! Bon code à tous !

Nicolas Housset

Passionné d'informatique, je suis Consultant et expert technique SAS VIYA, également co-fondateur de la société Flexcelite. Spécialisé dans les technologies SAS (Viya, 9.4) et les infrastructures associées (Linux, Hadoop, Azure), ce blog est mon espace pour partager mes mémos techniques et retours d'expérience.