SAS/Procédures

De testwiki
Version datée du 1 septembre 2024 à 11:45 par imported>Loicmarly
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Modèle:Chapitre

Pour effectuer des statistiques sur SAS vous aurez besoin d’utiliser les procédures. Ce sont des fonctions prédéfinies vous permettant par exemple de créer des tableaux ou des graphiques.

Les procedures sont de la forme :

PROC nomDeLaProc [DATA=tableDonnées] [options];
  param1;
  param2;
  ...;
RUN;

Si vous avez déjà spécifié la table que vous utilisez avec la ligne

DATA = lib.table;

il est inutile de l'indiquer à nouveau dans les procédures suivantes.

Proc PRINT : Affiche le contenu d'une table

PROC PRINT;
RUN;

Proc PLOT : Graphique

La procédure suivante trace un graphique sommaire (ASCII-Art) qui représente la relation entre X et Y avec des "*"

PROC PLOT;
  PLOT X*Y="*";		/* Graphique : X en fonction de Y */
RUN;

Proc UNIVARIATE : Analyse d'une table

Résultat de UNIVARIATE

La procédure UNIVARIATE permet d'obtenir de nombreuses informations sur une variable, comme la moyenne, la variance ou l'écart-type.

OPTION LINESIZE =132 PAGESIZE=66 NODATE;	/* Réglages de l’affichage sur une page */
FOOTNOTE "TPX : PROCEDURE UNIVARIATE";		/* Légende */
PROC UNIVARIATE NORMAL PLOT;			/* NORMAL = infos classiques; PLOT = Tracer un graphe */
  VAR X;
RUN;

Génération d'échantillons et valeurs moyennes

Pour simuler une série de tests on utilise des boucles do. On peut, de plus, générer à l'aide de rannor des nombres aléatoires suivant une loi normale.

data lib.tab;
n = 100;				/* Nombre de tests */
n2 = 850;				/* Nombre d'échantillons pour chaque test */
loi_m = 7;				/* Moyenne de la loi normale */
loi_e = 3;				/* Écart-type de la loi normale */
do i=1 to n;
  X = 0;
  do i2=1 to n2;
    X = X + loi_m + loi_e*rannor(0);	/* Ajoute une valeur aléatoire suivant la loi normale */
  end;
  XMOY = X/n2;				/* Calcul de la valeur moyenne pour le test actuel */
  output;				/* Ajoute une nouvelle ligne avec les valeurs de toutes les variables de la boucle */
end;
RUN;

Proc GPLOT : Graphique amélioré

Mieux que PLOT, GPLOT permet de tracer un vrai graphique, avec des droites ou des courbes.

La procédure suivante trace une droite rouge, qui modélise le plus la relation entre X et Y.

PROC GPLOT;
  SYMBOL1 v=square interpol=r     c=red;		/* Droite rouge */
  SYMBOL2 v=plus   interpol=rcclm c=blue;		/* Courbe bleue */
  PLOT X*Y=1;						/* Trace le graphique avec le symbol1 */
RUN;
QUIT;

Proc GChart : Histogramme graphique

Permet de trouver quelle loi est vérifiée par une suite de données.

Proc GChart;
  VBar M /type=percent levels=15;		/* Dessine 15 barres verticales */
  Star M /type=percent levels=15;		/* Trace 15 barres verticales */
  Pie M /type=percent levels=15;		/* Coupe 15 parts de pudding */
Run;

Proc CORR : Corrélations

Résultat de CORR

Calcule les corrélations entre les variables.

Proc CORR;
RUN;


Proc REG : Relation linéaire

Résultat de REG

Établit une relation linéaire du type Y=β0*X+β1 entre deux variables X et Y.

La procédure suivante permet d'obtenir la relation linéaire de Y en fonction de X :

Proc REG;
  MODEL Y = X;
RUN;

Modèle:Bas de page