Introduzione a SAS Base IDE

Introduzione a SAS Base

In questa introduzione a SAS Base inizieremo ad esplorare il mondo SAS, partendo dal mattone fondamentale: il linguaggio di programmazione.

Questa è la prima lezione del corso SAS Base, alla quale ne seguiranno altre focalizzate sui diversi aspetti del linguaggio per analisi e l’esplorazione dei dati.

Introduzione a SAS Base

SAS, acronimo che sta per Statistical Analysis System, è uno degli strumenti software per condurre analisi su dati più utilizzati. L’azienda, ha sede a Cary (North Carolina), produce una grande varietà di strumenti software, ma ognuno di questi è basato sul suo motore di calcolo: SAS Base.

Questi è un vero e proprio linguaggio di programmazione. Tramite SAS Base è infatti possibile rendere automatica, e quindi rieseguibile, qualsiasi analisi statistica.
Il linguaggio si divide in due passi logici:

  • Data Step — Permette di effettuare operazioni di ETL e data manipulation. Queste comprendono operazioni di estrazione, trasformazione e caricamento di dati;
  • Proc Step — Incapsula tutte le procedure SAS (proc è infatti l’abbreviazione di procedure). Tra le procedure più utilizzate ci sono ad esempio la PROC PRINT, che permette di riportare a video i primi n record di un dataset; la PROC SQL, che permette di eseguire codice SQL all’interno dell’ambiente SAS e così via.

Interfaccia

L’interfaccia grafica di SAS Base è minimale e pulita. Presenta due pannelli principali, il primo sulla sinistra, necessario ad esplorare le risorse proveninenti da librerie SAS o dal file system. Nel secondo invece, quello che occupa la maggior parte dello schermo, vengono precaricate tre viste:

  • Output — In questo pannello vengono riportati i report, siano essi grafici o tabellari, delle procedure eseguite.
  • Log — Consente di verificare la corretta esecuzione delle procedure lanciate
  • Editor — Si tratta di un’editor di testo intelligente, dotato di alcune funzionalità comode come il syntax highlighting. Qui è possibile inserire il codice SAS da poter poi eseguire.
Graphical User Interface SAS Base
Graphical User Interface SAS Base

Un esempio

Iniziamo ora a mettere mano al codice, sviluppando un piccolo esempio che ci sarà utile per esplorare le prime funzionalità del data step. Il seguente frammento di codice permette infatti di caricare un dataset inserendo i dati un record dopo l’altro con l’istruzione datalines. L’esempio in questione prende in esame un dataset di anagrafica di 5 soggetti, riportandone nome, cognome, sesso, età, altezza espressa in centimetri e peso espresso in chilogrammi.

Incolliamo ed eseguiamo dunque il seguente codice SAS all’interno dell’editor:

data people_registry;
	input id name $ surname $ sex $ age weight height;
	datalines;
1 Julia Smith F 29 56 172
2 Mark Ronson M 47 78 182
3 Patrick Lane M 33 69 177
4 Allie White F 45 62 189
5 Owen Peterson M 39 71 176
;
run;
	

Una volta eseguito il codice il dataset SAS People_registry è disponibile e può essere visualizzata cliccando sul pannello di sinistra al percorso Librerie > Work. Qui troveremo la nostra tabella SAS caricata e visibile come di seguito mostrato.

Tabella SAS People_registry
Tabella SAS People_registry

Esercitiamoci ora anche nell’utilizzo di variabili calcolate all’interno di un data step. Calcoliamo dunque il Body Mass Index (Indice di Massa Corporea) di ciascun soggetto, che si esprime come

BMI = \frac{mass_{kg}}{height^2_m}

Ecco dunque che il seguente estratto di codice SAS prende in input il dataset people_registry e crea una nuova variable calcolata bmi, che calcola il valore espresso dalla precedente formula.

data people_registry;
	set people_registry;
	bmi = weight / ( ( height / 100 ) ** 2 );
run;

Indice Corso SAS Base

Per agevolarti nella lettura del corso SAS Base alla fine di ogni articolo viene riportato l’indice comprendente tutti gli argomenti trattati.

  1. Introduzione a SAS Base
  2. Le istruzioni condizionali in SAS Base

Download

  • La versione pdf di questo articolo: Introduzione a SAS Base PDF
  • Il file SAS utilizzato in questo articolo people_registry

Questo articolo è disponibile anche in: Inglese, Francese


Pubblicato

in

da