Des tableaux de statistiques descriptives avec la PROC TABULATE

La PROC TABULATE est utile pour dresser des tableaux de statistiques descriptives. Les statistiques qu'elle peut éditer sont sensiblement les mêmes que dans la PROC MEANS. La force de cette procédure résidant dans la présentation des résultats.

PROC TABULATE <data= > <options> ;
  CLASS variables ;
  < CLASSLEV variables / style= ; >
  < KEYLABEL keyword="description" ; >
  < KEYWORD keywords / style= ; >
  TABLE <<page_expression>, row expression>, column expression ;
  VAR variables ;

Les instructions :


Les options :

L'option classdata= permet de préciser le nom d'une table contenant les variables qui serviront à constituer les sous-groupes.
L'option exclusive élimine de l'analyse les profils qui ne figurent pas dans la table déclarée après classdata= .

L'option order= ordonne les profils selon la méthode spécifiée : data (ordre d'apparition dans la table) et freq (ordre décroissant de l'effectif des profils) sont les plus utiles.

L'option style= définit la mise en forme des cellules du tableau. L'option style=parent indique que les cellules héritent de la mise en forme du titre de la colonne. Sinon on définit les paramètres entre [...]. On se réfèrera à l'aide en ligne de SAS pour une liste exhaustive des paramètres. Citons-en quelques uns :

Background
couleur de fond des cellules
Foreground
couleur du texte
Bordercolor
couleur de la bordure du tableau
Cell_height
hauteur des cellules
Cell_width
largeur des cellules
Font_face
police
Font_size
taille de la police

Exemple d'utilisation : style=[background=red]

Note : la mise en forme n'est visible que dans le fichier exporté par ODS.

Liste des mots-clés statistiques :

NEffectif
NMISSNombre de valeurs manquantes
PCTNPourcentage de l'effectif total
MINMinimum
MAXMaximum
RANGEPlage des valeurs = MAX - MIN
SUMWGTSomme des poids
SUMSomme
PCTSUMPourcentage de la somme
MEANMoyenne
STDEcart-type
STDERRStandard Error of Mean
USSSomme des carrés
CSSSomme des carrés des écarts à la moyenne
VARVariance
CVCoefficient de variation
TValeur de la statistique de Student pour le test (H0) : la moyenne est nulle
PROBTP-value associée au test précédent
MEDIANMédiane
QRANGEDistance interquartile
Q1 et Q3Premier et troisième quartiles
P1 P5 P10 P90 P95 P99Centiles

Lecture de sorties :

On effectue ci-dessous une PROC TABULATE pour éditer deux tableaux de statistiques. La sortie mise en forme est récupérée dans un fichier externe grâce à l'ODS (Output Delivery System).
Voir la page sur l'ODS

ods rtf file="w:/sas/cours/tabulate.rtf";

PROC TABULATE data=malib.bidon style=[font_size=2 font_face=verdana foreground=blue];
 CLASS zone distribution;
 CLASSLEV zone distribution / style=[background=white font_size=2 font_face=verdana];
 KEYLABEL pctn='percent' n='effectif' mean='moyenne' std='écart-type';
 TABLE (mean std),va*zone;
 TABLE zone,distribution*(n pctn);
 VAR va;
RUN;

ods rtf close;

On obtient la sortie .rtf suivante :

tableau stat mis en forme

L'instruction

TABLE (mean std),va*zone;
calcule la moyenne et l'écart-type (deux lignes dans le tableau) de la valeur ajoutée sur chacune des sous-populations zone=IF, zone=NE, zone=NW, zone=SE et zone=SW (modalités en colonnes).

L'instruction

TABLE zone,distribution*(n pctn);
calcule l'effectif et le pourcentage de l'effectif total de chacun des profils de (zone, distribution) recensés dans la table. Les modalités de zone sont en ligne. Les modalités de distribution et les statistiques sont en colonne.

L'instruction

KEYLABEL pctn="percent" n="effectif" mean="moyenne" std="écart-type";
permet aux noms des statistiques d'être clairs.

Les résultats apparaissent en Verdana bleu de taille 2 (9 pt) grâce à l'option

style=[font_size=2 font_face=verdana foreground=blue]
de la PROC.
Les cases portant le titre des modalités ont un fond blanc grâce à l'instruction
CLASSLEV zone distribution / style=[background=white font_size=2 font_face=verdana];

Les tableaux édités dans la fenêtre Output sont les mêmes, la mise en forme (couleur, police...) en moins.