- Univarié
- Variable quantitative
- Variable qualitative
- Bivarié
- Var quanti vs quanti
- Var quali vs quali
- Var quali vs quanti
Avec pour chaque point, les statistiques à calculer et les graphiques usuels à produire.
Avec pour chaque point, les statistiques à calculer et les graphiques usuels à produire.
Trois procédures pour produire les statistiques usuelles
PROC MEANS et PROC SUMMARYPROC UNIVARIATEPlusieurs procédures pour produire les différents graphiques
PROC UNIVARIATEPROC GPLOT (un peu obsolète)PROC SGPLOTPROC MEANS et PROC SUMMARYvardef=n : changer le calcul de la variance (\(\frac{}{n}\) au lieu de \(\frac{}{(n-1)}\)) (vrai dans d’autres procédures aussi)maxdec=2 : arrondi à 2 décimalesmean, median, Q1, Q3, … : statistiques à calculernoprint : n’affiche rien dans la sortie (vrai dans d’autres procédures aussi)proc means
data = sashelp.cars
vardef=n mean median Q1 Q3 maxdec=2;
var _NUMERIC_;
run;
PROC UNIVARIATEPlus complète que MEANS ou SUMMARY
outtable : création d’une table de résultatshistogram : dessine un histogrammeqqplot : dessine le QQ-plotproc univariate
data = sashelp.cars
outtable = iris_univ;
var MPG_City;
histogram;
qqplot;
run;
PROC SGPLOT - Histogrammehistogram pour déclarer les variables pour lesquelles produire un histogrammedensity pour ajouter la densité calculée :
quit;proc sgplot data=sashelp.cars;
histogram MPG_City;
density MPG_City;
density MPG_City / type=kernel;
keylegend / location=inside position=topright;
run;
quit;
PROC SGPLOT - Boxplothbox ou vbox pour définir les variables pour lesquelles produire une boîte à moustache (resp. horizontale et verticale)proc sgplot data=sashelp.cars;
hbox MPG_City;
run;
quit;
PROC SGPLOT - BoxplotPour avoir plusieurs variables sur un même graphique (à ne faire que si les variables ont même échelle - i.e. même unité ou variables standardisées)
data temp;
set sashelp.iris;
id = _N_;
proc transpose data=temp name=VarName out=tempbis (rename= (col1=Valeur));
by id;
run;
proc sgplot data=tempbis;
vbox Valeur / group=varName;
run;
quit;
Une procédure pour produire les statistiques usuelles
PROC FREQDeux procédures pour produire les différents graphiques
PROC GCHART (un peu obsolète)PROC SGPLOTPROC FREQtables pour déterminer les variables catégorielles à utilisernocum pour retirer les occurences et fréquences cumuléesnopercent pour n’avoir que les occurences (nommées frequency en anglais - attention)proc freq data=sashelp.cars;
tables Origin / nocum nopercent;
run;
PROC FREQ - diagramme en barresplots permet d’afficher les diagrammes
freqplot : diagramme en barresall : tous les diagrammes disponiblesproc freq data=sashelp.cars;
tables Origin / plots=freqplot;
run;
PROC SGPLOT - Diagramme en barres ou équivalenthbar ou vbar pour définir les variables pour le diagramme en barres (resp. horizontales et verticales)dot pour un diagramme avec des pointshline et vline pour obtenir une ligne (valable pour les variables ordinales)proc sgplot data=sashelp.cars;
hbar Origin;
run;
quit;
PROC GCHART - Diagramme circulairepie pour déterminer la variable à utiliserdonut pour la version avec un trou au centrenoheading pour supprimer l’en-tête automatiquepercent= pour indiquer où afficher le pourcentage (non affiché par défaut - ici en dehors de la part)proc gchart data=sashelp.cars;
pie Origin / noheading percent=outside;
run;
quit;
Une seule procédure pour les statistiques
PROC CORRPlusieurs procédures pour les graphiques
PROC GPLOT (un peu obsolète)PROC SGPLOTPROC CORRvar pour lister les variables à considérer pour le calcul des corrélationspearson, spearman et kendall pour spécifier les différents coefficients de corrélations à calculer (et les tests, faits automatiquement)proc corr data=sashelp.cars pearson spearman kendall;
var Invoice Horsepower MPG_City MPG_Highway;
run;
PROC SGPLOT - nuage de pointsscatter pour produire le nuage de points en déterminant les variables X et Yellipse permet d’ajouter l’ellipse de densisté du couple de variablesproc sgplot data=sashelp.cars;
scatter X=Horsepower Y=Invoice;
ellipse X=Horsepower Y=Invoice;
run;
quit;
PROC SGPLOT - heatmapheatmap pour produire la carte en déterminant les variables X et Yxbinsize et ybinsize pour déterminer la taille des catégories créées pour chaque variableproc sgplot data=sashelp.cars;
heatmap X=Horsepower Y=Invoice / xbinsize=50 ybinsize=10000;
ellipse X=Horsepower Y=Invoice;
run;
quit;
PROC SGPLOT - régressionreg pour produire le nuage de points en déterminant les variables X et Y, avec la courbedegree permet de déterminer le degré de la régressionproc sgplot data=sashelp.cars;
reg X=Horsepower Y=Invoice;
run;
quit;
PROC SGPLOT - loess plotloess pour produire le nuage de points en déterminant les variables X et Y, avec la courbe loesssmooth permet de lisser la courbe (faible valeur, proche de 0) ou de la faire la plus proche des données (forte valeur, proche de 1)proc sgplot data=sashelp.cars;
loess X=Horsepower Y=Invoice / smooth=.1;
run;
quit;
Existe aussi en version \(B\)-spline pénalisé (avec pbspline)
PROC SGPLOT - needle plotneedle pour produire le graphique en déterminant les variables X et Yproc sgplot data=sashelp.cars;
needle X=Horsepower Y=Invoice / baseline= 50000;
run;
quit;
Une seule procédure pour les statistiques
PROC FREQPlusieurs procédures pour les graphiques
PROC FREQPROC GCHART (un peu obsolète)PROC SGPLOT et PROC SGPANELPROC FREQtables permet de définir les deux variables qualitatives à croisernopercent, norow, nocol, nofreq permettent du supprimer l’affichage de respectivement : les pourcentages globaux, les profils lignes, les profils colonnes et les occurencesproc freq data = sashelp.cars;
tables Type * Origin / nofreq nopercent norow;
run;
PROC FREQ - diagramme en barresplots permet de définir les graphiques à produirefreqplot est par défaut un diagramme en barres séparéesmosaicplot produit un diagramme proche d’un diagramme en barres empiléesproc freq data = sashelp.cars;
tables Origin * Type / plots = freqplot;
tables Type * Origin /
plots = (
mosaicplot
freqplot(twoway=stacked scale=grouppct)
);
run;
PROC SGPLOT - Diagramme en barres séparéeshbar ou vbar comme précédemmentgroup, option de hbar|vbar, permet de spécifier la variable supplémentaire de regroupementproc sgplot data = sashelp.cars;
vbar Origin / group=Type groupdisplay=cluster;
run;
quit;
PROC SGPANEL - Diagramme en barres séparéeshbar ou vbar comme pour PROC SGPLOTpanelby permet de créer des graphiques séparées dans différents panneauxproc sgpanel data = sashelp.cars;
panelby Origin;
vbar Type;
run;
quit;
PROC SGPLOT - Diagramme en barres empiléesproc freq permettant de stocker les profils colonnes dans une tablehbar ou vbar, avec group comme précédemmentresponse permet de définir comment calculer la taille des blocs (ici les pourcentages en colonnes donc)proc freq data = sashelp.cars noprint;
tables Type * Origin / out=cars_temp outpct;
proc sgplot data = cars_temp;
vbar Origin / response=pct_col group=Type;
run;
quit;
PROC SGPLOT - heatmapproc sgplot data=sashelp.cars;
heatmap X=Type Y=Origin;
run;
quit;
colorresponse permet de spécifier la variable pour la couleur : ici, on représente donc les profils colonnesproc freq data = sashelp.cars noprint;
tables Origin * Type / out=cars_temp outpct;
proc sgplot data = cars_temp;
heatmap X=Origin Y=Type / colorresponse=pct_col colormodel=TwoColorRamp;
run;
quit;
PROC SGPLOT - bubble plotproc freq data = sashelp.cars noprint;
tables Origin * Type / out=cars_temp outpct;
proc sgplot data = cars_temp;
bubble X=Origin Y=Type size=count;
run; quit;
proc freq data = sashelp.cars noprint;
tables Origin * Type / out=cars_temp outpct;
proc sgplot data = cars_temp;
bubble X=Origin Y=Type size=pct_col /
colorresponse=pct_col colormodel=TwoColorRamp;
run; quit;
PROC SGPLOT - needle plotY est ici les profils colonnes, group permettant de spécifier la deuxième variable qualitativebaseline vient du fait qu’Origin a trois modalités possiblesproc freq data = sashelp.cars noprint;
tables Origin * Type / out=cars_temp outpct;
proc sgplot data = cars_temp;
needle X=Type Y=pct_col / group=Origin groupdisplay=cluster baseline=33.33;
run; quit;
Plusieurs procédures pour les statistiques
PROC MEANS ou PROC SUMMARYPROC UNIVARIATEPlusieurs procédures pour les graphiques
PROC GPLOT ou GCHART (un peu obsolète)PROC SGPLOT et PROC SGPANELPROC MEANS, SUMMARY et UNIVARIATEclass permet de déterminer la variable qualitative à utiliser, afin de calculer les statistiques pour chaque modalitéproc means data = sashelp.cars;
class Origin;
var Invoice;
run;
proc univariate data = sashelp.cars;
class Origin;
var Invoice;
histogram;
qqplot;
run;
PROC SGPLOT et PROC SGPANEL - Histogrammes et densitéssgplot plutôt pour les densitésproc sgplot data = sashelp.cars;
density Invoice / group=Origin;
run; quit;
sgpanel pour les histogrammespanelby pour spécifier la variable qualitativeproc sgpanel data = sashelp.cars;
panelby Origin;
histogram Invoice;
run; quit;
PROC SGPLOT - Boîtes à moustachehbox et vbox comme précédemmentgroup pour spécifier la variable qualitativesgpanel peut aussi être utilisé, mais la comparaison entre les boîtes est moins facileproc sgplot data = sashelp.cars;
hbox Invoice / group=Origin;
run; quit;
PROC SGPLOT - needle plotbaseline : moyenne générale de la variable quantitativeY doit absolument être la variable quantitativeproc summary data = sashelp.cars;
class Origin;
var Invoice;
output out=cars_temp(where=(_TYPE_=1)) mean=Invoice;
proc sgplot data = cars_temp;
needle X=Origin Y=Invoice / baseline=30014.70;
run;quit;
PROC SGPLOT - waterfall plotcategory pour la variable qualitative et response pour la variable quantitativeproc sgplot data = sashelp.cars;
waterfall category=Origin response=Invoice;
run; quit;
PROC SGPLOT - nuage de points jitterjitter : randomisation légèreproc sgplot data = sashelp.cars;
scatter X=Origin Y=Invoice / jitter;
run; quit;
data cars_temp;
set sashelp.cars;
jitter = rand('uniform')*.3 +
1*(Origin="Asia") + 2*(Origin="Europe") + 3*(Origin="USA");
proc sgplot data = cars_temp;
scatter X=jitter Y=Invoice / group=Origin groupdisplay=cluster;
xaxis display=none;
run; quit;
Différents graphiques sont adaptés pour représentés plus de deux variables :
sgpanel pour avoir plusieurs représentations