Estratto del documento

COMANDI:

-In una stringa, ad esempio “Running” è fondamentale rispettare maiuscole e minuscole (ogni volta che si

scrive una stringa va tra virgolette)

-I NOMI DELLE VARIABILI DEVONO ESSERE SEPARATI DA SPAZI: I nomi di variabili devono essere lunghi al

massimo 32 caratteri(non si può scrivere testi lunghi)

-SAS ha bisogno di distinguere le variabili numeriche da quelle alfanumeriche($)

-le lettere accentate non sono caratteri legali in SAS

-run= una volta che si scrive il programma bisogna scrivere alla fine run; per fare in modo che il programma

vada in esecuzione e poi bisogna cliccarlo nell’icona in alto

-infile=dopo aver scritto “infile” bisogna scrivere il percorso completo del file che si vuole leggere (quindi

può essere in formato “csv” “txt” …

-input= dopo il comando input scrivere i nomi delle variabili perché rappresentano il titolo delle colonne

-$= ad ogni fine di ogni stringa (per indicare che quella variabile è alfanumerica)

-per aggiungere una variabile nel dataset si deve scrivere il nome della variabile ad esempio

bmi=peso/(altezza**) significa che ho creato una nuova variabile creata da peso/altezza elevata al quadrato

-$:30. = significa leggi una stringa di al massimo 30 caratteri

-dsd= si utilizza quando la virgola viene usata per separare due campi e quindi si mette dsd per far capire a

SAS che la virgola è utilizzata come separatore

-firstobs= se si scrive “firstobs=2” vuol dire di leggere i dati dalla riga 2

-obs= specifica il numero di righe del file da leggere, per esempio obs=300

-dlm= questo comando indica che le variabili tra di loro sono separate da qualcosa e bisogna specificare

cosa per esempio dlm=”,” (delimitatore)

dlm=”09”x (delimitatore universale, “aggiusta” i dataset)

-missover= leggi i dati delle variabili e se mancano delle variabili mette un osservazione non fatta

-Le date e le ore non sono ne numeri ne una stringa, hanno un significato chiaro e specifico= corrisponde

ad un formato specifico, quindi le date si indicano così MMDDYY8. (che indica mese, giorno e anno con 8

caratteri, cioè in cui i separatori hanno 8 caratteri, dopo il mese, giorno e anno) e le ore si indicano in

questo modo HHMMSS (ore, minuti e secondi)

-title “Tabella”; per aggiungere un titolo al dataset bisogna scrivere il comando title e poi tra parentesi il

nome del titolo che vogliamo dare al dataset

PROC CONTENTS DATA

-proc contents data= fiori2; “proc” rappresenta il passo della procedura, “contents” rappresenta nome

della procedura e “data” rappresenta il nome del dataset su cui la procedura deve agire, in questo caso

‘fiori2’ (rappresenta un sommario dell’informazione del datastep)

PROC PRINT DATA

proc print data= esame;

var nome;

id cognome;

title ’elenco delle persone’;

where peso > 80;

format (cognome nome) $30.;

run;

-proc print data= fiori2 questa funzione mostra tutto il contenuto del dataset all’ interno di una procedura

ossia:

proc print data=calit2;

var Flowid date; => in questo modo stamperà soltanto il contenuto della variabile Flowid date

run;

ALL’INTERNO DI UNA PASSO DI PROCEDURA (PROPESTEP) SI UTILIZZA UNA “WHERE” PER DIRE LA

PROCEDURA VIENE APPLICATA SOLTANTO ALLE OSSERVAZIONI CHE SODDIFANO LA CONDIZIONE

-proc print data=calit2;

where Flowid=7; => permette di indicare una condizione e soltanto le righe che soddisfano quella

osservazioni saranno stampate, per esempio in questo caso stamperà solo le osservazioni in cui Flowid sia

uguale a 7

where Flowid=7 and date < '31Jul05'd; => significa che SAS stamperà solo le osservazioni in cui Flowid sia

uguale a 7 con quella data, indicando la data con la finale d, sto dicendo a SAS che quella è una data a tutti

gli effetti

run;

-proc print data=calit2;

format date ddmmyy10.; => in questo caso la variabile che deve essere stampata è quella con il giorno, il

mese e l anno con 10 caratteri complessivi. Quindi con il comando “format” mi fa vedere la variabile date

nel formato che ho specificato

ALL’INTERNO DI UN DATASTEP SI UTILIZZA LA “IF” (CONDIZIONE) PER TENERE SOLTANTO LE

OSSERVAZIONI CHE SODDIFANO LA DETERMINATA CONDIZIONE

-data nuovo;

set calit2; => questo crea un dataset dal nome nuovo partendo e prendendo i file dal dataset calit2

if Flowid=7 and date < '31Jul05'd; => crea un dataset con nome nuovo con questa condizione

keep Flowid date; => significa di tenere solo queste due variabili nel nuovo file

-il punto rappresenta il simbolo del valore mancante in SAS

COS’E’ UNA LIBRERIA IN SAS?

Una libreria è un grande contenitore di dataset, ogni libreria in SAS è associata ad una cartella

In SAS i dataset sono organizzati all’interno delle librerie e noi abbiamo una libreria che si chiama ‘WORK’ e

‘SASHELP’

SAS contiene le librerie, in cui ci sono dei dataset di SAS e ci possono essere le librerie temporanee(come

WORK) e le librerie permanenti

-libname lib '/folders/myshortcuts/MyFolders/esercizi/dati-lezione1'; => con questo comando verrà

creata una nuova libreria associata alla cartella che ho segnato il percorso (bisogna crearla quando si deve

importare i dati in un dataset permanente)

data lib.nuovo2;

set calit2;

if Flowid=7 and date < '31Jul05'd;

keep Flowid date;

run; => verrà creata un nuovo dataset ‘nuovo2’ dentro la libreria lib

- data lib.nuovo2;

set calit2;

if Flowid=7 and date < '31Jul05'd;

drop date; => la funzione “drop” viene utilizzata per guardare tutte le variabili tranne quella

‘date<31Jul05d’

run;

- data lib.nuovo2;

set calit2;

if Flowid=7 and date < '31Jul05'd; drop date; run;

count2 = count * count; => quando si scrive così vuol dire che creo una nuova variabile ‘count2’ che è

count al quadrato

run;

Quando viene chiesto di visualizzare i risultati bisogna usare:

proc print data = nome del dataset; run;

PER ESPORTARE un dataset:

data medie;

set medie;

file "/folders/myshortcuts/MyFolders/esportatimedie.txt" dlm=";";

put Regione Popolazione Superficie;

run;

PROC FORMAT DATA

-proc format data= esame;

value formato 0=”Rosso”

1=’Giallo’

2=’Blu’;

run;

-proc format data= esame;

value $formatocolore

’RED’=’Rosso’

’YELLOW’=’Giallo’

’BLUE’=’Blu’;

run;

proc print data= esame;

var colore;

format formatocolore.; run; 24/03/2020

Per ORDINARE UN DATASET: PROC SORT DATA

-proc sort data= corso.persone;

by nome;

run; => in questo modo la “proc sort data” ordina il dataset per nome

proc print data= corso.persone;

run;

OPPURE

proc sort data= corso.persone;

by descending nome;

run; => in questo modo la “proc sort data” ordina il dataset per nome in modo decrescente

proc print data= corso.persone;

run;

PROC MEANS DATA

- proc means data= sashelp.bweight;

run; => “proc means data” permette di calcolare le statistiche di default del dataset su tutte le variabili

numeriche

- proc means data= sashelp.bweight mean std kurtosis ;

var weight;

run; => “proc means data” permette di calcolare le statistiche di default del dataset mentre il comando

“var” permette di calcolare queste statistiche solo sulla variabile numerica “weight” (valore medio,

deviazione standard della curtosi della variabile weight)

-proc means data= sashelp.bweight mean std kurtosis;

var weight;

class black;

run; => in questo caso “class” permette di calcolare le statistiche indicate (ossia la media, std e la curtosi)

sul dataset bweight distintamente per ogni valore che assume la variabile black

-proc means data= sashelp.bweight mean std kurtosis;

var weight momage;

class black boy;

run; => in maniera distinta io ho trattato la variabile “weight” e la variabile “momage” (questo vuol dire

che all’interno del dataset ogni colonna viene trattata in maniera indipendente dalle altre, io non ho in SAS

un modo per dire che le statistiche di dati presi da due colonne diverse devono essere messi insieme per

calcolare le statistiche) una proc means lavora rigidamente su una singola colonna

Io posso fare in modo che il risultato di una “proc means” venga salvato in un nuovo dataset: (output

significa che il risultato della proc means deve essere salvato, non solo nella finestra dei risultati, ma anche

in un nuovo dataset (ossia il comando out = risultato che specifica il dataset da creare si chiama “risultato”

e con mean = media specifico in quale variabile deve essere salvata, in questo caso “media”)

-proc means data= sashelp.bweight mean std kurtosis;

var weight momage;

class black boy;

output out = risultato mean = media;

run;

Per fare in modo di visualizzare le righe relative a stratificazione massima bisogna usare il comando

“nway”(fa si che non contenga osservazioni Relative all’interno del dataset)

-proc means data=sashelp.bweight mean std kurtosis nway;

var weight momage;

class black boy;

output out =corso.risultato mean = media;

run;

proc print data= corso.risultato; run; Qui mi visualizza il

dataset con le righe

relative alla

stratificazione massima

(comando nway)

-proc means data=sashelp.bweight mean std kurtosis nway;

var weight momage;

class black boy;

output out =corso.risultato mean = media min= minimo; => stampare più variabili

run;

Quando noi andiamo a scrivere mean= media intendiamo che vogliamo ottenere la media della variabile

“weight”, però se vogliamo ottenere anche la media della variabile momage, devo scrivere “mean= media

media2”

-proc means data=sashelp.bweight mean std kurtosis nway;

var weight momage;

class black boy;

output out =corso.risultato mean = media media2 min= minimo;

run;

-proc means data=sashelp.bweight mean std kurtosis nway;

var weight momage;

class black boy;

output out = corso.risultato mean = media media2 min(momage)= minimo; => SPECIFICO la

variabile di cui voglio calcolare il minimo

-/* visualizzare i valori min e max della varibile */

proc means data=sashelp.bweight min max;

var weight;

run;

ORA VEDIAMO L’UTILIZZO DELLA PROC MEANS PERO’ NON CONSIDERATA FORMALMENTE COME UN

CALCOLO DELLA STATISTICA

-Ora voglio sapere quale modello/osservazione realizza il valore minimo e il valore massimo(ossia co

Anteprima
Vedrai una selezione di 4 pagine su 11
Appunti programma SAS Pag. 1 Appunti programma SAS Pag. 2
Anteprima di 4 pagg. su 11.
Scarica il documento per vederlo tutto.
Appunti programma SAS Pag. 6
Anteprima di 4 pagg. su 11.
Scarica il documento per vederlo tutto.
Appunti programma SAS Pag. 11
1 su 11
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher aurora.musitelli.am56 di informazioni apprese con la frequenza delle lezioni di Laboratorio di informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Milano - Bicocca o del prof Della Vedova Gianluca.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community