- 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 SUMMARY
PROC UNIVARIATE
Plusieurs procédures pour produire les différents graphiques
PROC UNIVARIATE
PROC GPLOT
(un peu obsolète)PROC SGPLOT
PROC MEANS
et PROC SUMMARY
vardef=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 UNIVARIATE
Plus 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 FREQ
Deux procédures pour produire les différents graphiques
PROC GCHART
(un peu obsolète)PROC SGPLOT
PROC FREQ
tables
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 CORR
Plusieurs procédures pour les graphiques
PROC GPLOT
(un peu obsolète)PROC SGPLOT
PROC CORR
var
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 Y
ellipse
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 Y
xbinsize
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 loess
smooth
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 Y
proc sgplot data=sashelp.cars; needle X=Horsepower Y=Invoice / baseline= 50000; run; quit;
Une seule procédure pour les statistiques
PROC FREQ
Plusieurs procédures pour les graphiques
PROC FREQ
PROC GCHART
(un peu obsolète)PROC SGPLOT
et PROC SGPANEL
PROC FREQ
tables
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 SGPLOT
panelby
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 SUMMARY
PROC UNIVARIATE
Plusieurs procédures pour les graphiques
PROC GPLOT
ou GCHART
(un peu obsolète)PROC SGPLOT
et PROC SGPANEL
PROC MEANS
, SUMMARY
et UNIVARIATE
class
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