SAS - Scatter Plots
Un grafico a dispersione è un tipo di grafico che utilizza i valori di due variabili tracciate su un piano cartesiano. Di solito viene utilizzato per scoprire la relazione tra due variabili. In SAS usiamoPROC SGSCATTER per creare grafici a dispersione.
Si noti che creiamo il set di dati denominato CARS1 nel primo esempio e utilizziamo lo stesso set di dati per tutti i set di dati successivi. Questo set di dati rimane nella libreria di lavoro fino alla fine della sessione SAS.
Sintassi
La sintassi di base per creare un grafico a dispersione in SAS è:
PROC sgscatter DATA = DATASET;
PLOT VARIABLE_1 * VARIABLE_2
/ datalabel = VARIABLE group = VARIABLE;
RUN;
Di seguito è riportata la descrizione dei parametri utilizzati:
DATASET è il nome del set di dati.
VARIABLE è la variabile utilizzata dal set di dati.
Grafico a dispersione semplice
In un semplice grafico a dispersione scegliamo due variabili dal dataset e le raggruppiamo rispetto a una terza variabile. Possiamo anche etichettare i dati. Il risultato mostra come le due variabili sono disperse nel fileCartesian plane.
Esempio
PROC SQL;
create table CARS1 as
SELECT make, model, type, invoice, horsepower, length, weight
FROM
SASHELP.CARS
WHERE make in ('Audi','BMW')
;
RUN;
TITLE 'Scatterplot - Two Variables';
PROC sgscatter DATA = CARS1;
PLOT horsepower*Invoice
/ datalabel = make group = type grid;
title 'Horsepower vs. Invoice for car makers by types';
RUN;
Quando eseguiamo il codice sopra, otteniamo il seguente output:
Grafico a dispersione con previsione
possiamo usare un parametro di stima per prevedere la forza della correlazione tra disegnando un'ellisse attorno ai valori. Usiamo le opzioni aggiuntive nella procedura per disegnare l'ellisse come mostrato di seguito.
Esempio
proc sgscatter data = cars1;
compare y = Invoice x = (horsepower length)
/ group = type ellipse =(alpha = 0.05 type = predicted);
title
'Average Invoice vs. horsepower for cars by length';
title2
'-- with 95% prediction ellipse --'
;
format
Invoice dollar6.0;
run;
Quando eseguiamo il codice sopra, otteniamo il seguente output:
Matrice di dispersione
Possiamo anche avere un grafico a dispersione che coinvolge più di due variabili raggruppandole in coppie. Nell'esempio seguente consideriamo tre variabili e disegniamo una matrice del grafico a dispersione. Otteniamo 3 coppie di matrici risultanti.
Esempio
PROC sgscatter DATA = CARS1;
matrix horsepower invoice length
/ group = type;
title 'Horsepower vs. Invoice vs. Length for car makers by types';
RUN;
Quando eseguiamo il codice sopra, otteniamo il seguente output: