3. l’importazione di dataset esterni 3.1 introduzione · 2020-03-29 · 31 3.2 l’importazione...
Post on 15-Jul-2020
13 Views
Preview:
TRANSCRIPT
30
3. L’IMPORTAZIONE DI DATASET ESTERNI
3.1 Introduzione
Molto frequentemente i dati da elaborare con un programma SAS non devono essere inseriti da
programma, ma sono già disponibili in file memorizzatiti sul pc o su supporti esterni. In questi casi,
quale che sia il tipo di dataset (ossia la sua estensione), il SAS è in grado di leggere le informazioni
in esso contenute, ma le istruzioni variano a seconda della sua natura: in alcuni casi è necessario
utilizzare istruzioni contenute in un DATA STEP, in altri casi istruzioni di PROC STEP.
Più precisamente, con le istruzioni contenute in un DATA STEP è possibile effettuare
l’importazione di dataset SAS e di dataset testuali (con estensione .txt), mentre per la lettura di altri
tipi di dataset, e in particolare dei dataset Excel, è necessario l’utilizzo di una particolare procedura
SAS.
Nei due paragrafi successivi sono descritte le istruzioni utilizzate in un DATA STEP per la lettura
di dataset in formato SAS e di dati testuali, nel paragrafo 3.4 si descrivono genericamente le
procedure SAS, mentre nell’ultimo paragrafo si analizza la procedura SAS utilizzata per
l’importazione di dataset esterni in formati diversi dal SAS e dai dati testuali.
31
3.2 L’importazione di dataset SAS
I dataset SAS, ossia i dataset ottenuti come output con un programma SAS, sono strutturati come
nella tabella 2.1.1 e hanno l’estensione “.sas7bdat”. Questo formato è diventato abbastanza
frequente: anche l’ISTAT prevede il formato SAS in molte banche dati: per esempio, i microdati1
ad uso pubblico sono disponibili nei formati STATA, SAS, R e TXT.
Per importare (o leggere) nel programma un dataset SAS che si trovi sul pc in uso o su un
dispositivo collegato (come per esempio una chiavetta USB) è necessario indicare al software il
percorso da seguire e il nome del data set, completo di estensione.
L’istruzione necessaria è composta dalla parola chiave “set”, seguita da una stringa che contiene
tutte le informazioni (percorso-nome completo del dataset) inserite fra apici (e il SAS evidenzia
automaticamente in viola tali informazioni.). Questa istruzione va digitata nella riga successiva a
quella contenente la parola chiave “data” seguita dal nome del dataset.
Ipotizzando, per esempio, che dal sito ISTAT sia stato scaricato il dataset “hbs_a2015” relativo
all’indagine sulle spese delle famiglie (anno 2015) e che questo dataset sia stato salvato nella
directory “c:\users\naddeo\desktop”, un programma in grado di importare il dataset potrebbe essere
il seguente
Esempio 3.2.1
data famiglie;
set "c:\users\naddeo\desktop\hbs_a2015.sas7bdat";
proc print;
run;
dove l’estensione del dataset “.sas7bdat” indica che il dataset è in formato SAS.
Se, invece, si volesse importare nel programma il dataset SAS “studenti.sas7bdat” contenuto nella
directory “c:\es_MRS”, un programma SAS in grado di leggere il dataset potrebbe avere la forma
seguente
1 I file di microdati ad uso pubblico sono collezioni di dati scaricabili via web, resi anonimi e privi di riferimenti che ne
permettano il collegamento con le unità intervistate (http://www.istat.it/it/archivio/microdati+ad+uso+pubblico)
32
Esempio 3.2.2
data studenti;
set "c:\es_MRS\studenti.sas7bdat";
proc print;
run;
Pur avendo attribuito lo stesso nome al dataset di input e a quello letto all’interno del programma, i
due dataset sono in realtà ben distinti, in quanto presenti su due diverse directory del pc.
Ovviamente è possibile importare più dataset all’interno di uno stesso programma, ma è evidente
che a ciascuno di essi andrà attribuito un nome differente, altrimenti il SAS andrebbe a ricoprire il
dataset creato in precedenza.
Se, per esempio, si volessero importare due dataset diversi, il primo dei quali, relativo a individui di
sesso maschile, è denominato “males” ed è presente nella directory “C:\stat”, mentre il secondo,
relativo a individui di sesso femminile, è denominato “females” ed è presente nella medesima
directory, si potrebbe utilizzare un programma analogo a quello riportato nel riquadro seguente
Esempio 3.2.3
data maschi;
set "c:\stat\males.sas7bdat";
proc print;
data femmine;
set "c:\stat\females.sas7bdat";
proc print;
run;
33
3.3 L’importazione di dataset testuali
Molti dataset sono in formato testuale e in questo caso il loro contenuto è visibile con qualsiasi
editor di testo. Le informazioni contenute al loro interno sono generalmente strutturate in modo che
le righe corrispondono alle n unità statistiche e le colonne alle h variabili rilevate su tali unità.
Pertanto il contenuto di questi dataset è un insieme di numeri e/o caratteri alfabetici che, letti per
riga, indicano le determinazioni assunte dalle h variabili sulle n unità statistiche considerate.
In altre situazioni ciascuna riga del dataset contiene le determinazioni assunte dalle variabili
considerate su più unità statistiche, mentre in altri casi l’osservazione su una singola unità è
contenuta su più righe diverse. Tutte queste eccezioni saranno analizzate in dettaglio nelle pagine
seguenti.
Per leggere un dataset testuale presente sul pc, o su un supporto esterno, è necessario indicare al
SAS il suo nome, completo di estensione, e il percorso da seguire per trovarlo, così come è stato
fatto nel caso della lettura di un dataset SAS. L’unica differenza nella lettura dei due tipi di archivi
è l’istruzione da utilizzare che, nel caso di un dataset testuale, è la parola chiave “infile”, che va
sempre seguita da una stringa contenente il percorso e il nome completo del dataset inseriti fra apici
(il SAS evidenzia automaticamente in viola queste informazioni). Come nel caso precedente, questa
istruzione va digitata nella riga successiva a quella in cui compare l’istruzione “data”.
Si supponga, per esempio, che si voglia leggere il seguente dataset, denominato EUnonCom.txt,
Albania 227010 214828
Bielorussia 1636 7300
Bosnia-Erzegovina 14315 11606
Kosovo 27887 21947
Macedonia, Repubblica di 38203 33939
Moldova 43128 87319
Montenegro 906 966
Russia, Federazione 7334 32790
Serbia 7856 7294
Turchia 17202 17507
Ucraina 12321 9163
che riporta la cittadinanza, il numero di persone di sesso maschile e di sesso femminile provenienti
dall’Europa non comunitaria che risultano regolarmente presenti in Italia al 1° gennaio 2017 (fonte
ISTAT). In questo caso, come si vede, ciascuna riga corrisponde ad una singola unità statistica.
34
Si tratta di un dataset in formato fisso in cui la variabile “cittadinanza” può assumere
determinazioni più lunghe di 8 caratteri che, per alcune osservazioni, contengono anche spazi
bianchi. In casi come questi la lettura del dataset deve essere effettuata indicando al SAS la
lunghezza e la posizione delle singole variabili, ossia specificando le colonne in cui sono contenute
le singole determinazioni.
Un esempio di programma utilizzabile per la lettura del dataset è riportato nel riquadro successivo,
in cui si è ipotizzato che il dataset si trovi nella directory c:\dataset.
Esempio 3.3.1 /*LETTURA DI UN DATASET TESTUALE ESTERNO IN FORMATO FISSO*/
data extraeuropei;
infile 'c:\dataset\eunoncom.txt'; /*il SAS non distingue fra minuscole e
maiuscole*/
input cittadinanza $ 1-27 maschi 28-33 femmine 35-40;
proc print;
run;
L’output fornito dalla proc print risulta il seguente
Oss cittadinanza maschi femmine
1 Albania 227010 214828
2 Bielorussia 1636 7300
3 Bosnia-Erzegovina 14315 11606
4 Kosovo 27887 21947
5 Macedonia, Repubblica di 38203 33939
6 Moldova 43128 87319
7 Montenegro 906 966
8 Russia, Federazione 7334 32790
9 Serbia 7856 7294
10 Turchia 17202 17507
11 Ucraina 12321 9163
Quanto descritto a proposito del formato utilizzato nella creazione di un dataset SAS resta valido
anche se si tratta di un dataset testuale letto dall’esterno del programma. Così, per esempio, per
35
leggere il dataset precedente si possono utilizzare le seguenti istruzioni in cui il formato di lettura è
misto
Esempio 3.3.1 /*LETTURA DI UN DATASET TESTUALE ESTERNO IN FORMATO MISTO*/
data extraeuropei;
infile 'c:\dataset\eunoncom.txt';
input cittadinanza $ 1-27 maschi femmine;
proc print;
run;
Si è detto in precedenza che, in alcune situazioni, le righe degli archivi da leggere non contengono
una singola osservazione, ma più osservazioni una di seguito all’altra. In questo caso occorre
esplicitare la reale struttura di ciascun record, indicando quante sono le variabili rilevate su ciascuna
unità statistica mediante il simbolo @@.
Si consideri, per esempio, il seguente dataset “studenti1.txt”
m 23 f 19 m 18 m 22 f 25 f 26
che riporta il sesso (che assume le determinazioni “m” per maschio e “f” per femmina) e l’età
(espressa in valori) di 6 studenti su un’unica riga.
Per far leggere correttamente il dataset al SAS sarà sufficiente scrivere un programma in cui viene
specificato il nome del dataset (completo di estensione), il percorso da seguire per trovarlo e il
numero di variabili. Se, per esempio, si suppone che il dataset si trovi in “c:\dataset” il programma
SAS potrebbe assumere la forma seguente
Esempio 3.3.2 /*LETTURA DI PIU' OSSERVAZIONI DA UNO STESSO RECORD*/
data studenti;
infile 'c:\dataset\studenti1.txt';
input genere $ eta @@;
proc print;
run;
In pratica si sta dicendo al software che il singolo record è formato dalle determinazioni di due sole
variabili, di cui la prima (genere) è alfanumerica, mentre la seconda (eta) è numerica. Il simbolo
“@@” indica al SAS la fine del record.
Il risultato dell’esecuzione del programma precedente fornisce un dataset SAS così strutturato
36
Oss genere eta
1 m 23
2 f 19
3 m 18
4 m 22
5 f 25
6 f 26
Si consideri ora il seguente dataset (per ipotesi contenuto sempre nella medesima directory),
denominato “studenti2.txt”
m 70 168 f 50 161
m 68 172 m 82 194 f 55 159 f 56 157
che riporta le informazioni di 6 studenti classificati per sesso, peso corporeo e altezza.
In questo caso la lettura può essere effettuata mediante il seguente programma
Esempio 3.3.3 /*LETTURA DI PIU' OSSERVAZIONI DA UNO STESSO RECORD*/
data studenti;
infile 'c:\dataset\studenti2.txt';
input genere $ peso altezza @@;
proc print;
run;
che restituisce questo output
Oss genere peso altezza
1 m 70 168
2 f 50 161
3 m 68 172
4 m 82 194
5 f 55 159
6 f 56 157
37
Oltre ai casi in cui una singola riga di un dataset contiene le osservazioni relative a più unità
statistiche, esistono casi in cui una singola osservazione è spezzata su più righe del dataset. In
questo caso occorre indicare al SAS che, per ciascuna unità statistica, il record corrispondente è
composto da più variabili le cui determinazioni compaiono su più righe.
Considerata la prima unità statistica, l’istruzione necessaria in questo caso consiste nel digitare il
simbolo “/” dopo l’indicazione dell’ultima variabile che compare sulla prima riga e nel continuare a
elencare le variabili successive fino a completare l’intero record. La fine di tale elenco viene
indicata mediante il solito punto e virgola (“;”).
Nell’esempio successivo si considera il dataset “comuni.txt” che riporta alcuni dati relativi a 4
comuni italiani: la prima riga riporta la zona e l’emissione di gas a effetto serra, la seconda riga la
dimensione del comune (p=piccolo, m=medio), mentre la terza riga contiene la percentuale di
famiglie che denunciano irregolarità nella distribuzione dell’acqua potabile e la percentuale di
raccolta differenziata.
A 38
m
4.8 56.7
A 21.9
p
3.2 71.9
B 20.5
p
1.8 57.5
B 27.2
m
5.1 63.9
Supponendo che il dataset si trovi nella medesima directory considerata in precedenza (c:\dataset),
occorre indicare che su ciascuna unità sono state rilevate 5 variabili. Un possibile programma SAS
adeguato per l’importazione di questo dataset è riportato nel riquadro successivo
Esempio 3.3.4 /*LETTURA DI UN'OSSERVAZIONE SU PIU' RECORD*/
data stat_comuni;
infile 'c:\dataset\comuni.txt';
input zona $ em_gas_ef_serra / dim $ irreg_acqua racc_diff;
proc print;
run;
38
In questo caso dopo le prime due variabili (“zona” e “em_gas_ef_serra”) è stato inserito il
carattere speciale “/” che indica al SAS di continuare a considerare altre variabili, fino a incontrare
il punto e virgola. In questo modo il software sa che il record effettivo è composto dalle prime due
variabili più tutte le successive, fino a quando trova il punto e virgola (“dim”, “irreg_acqua” e
“racc_diff”).
L’output della proc print risulta infatti il seguente
Oss zona em_gas_ef_serra dim irreg_acqua racc_diff
1 A 38.0 m 4.8 56.7
2 A 21.9 p 3.2 71.9
3 B 20.5 p 1.8 57.5
4 B 27.2 m 5.1 63.9
39
3.4 Introduzione ai PROC STEP
L’importazione di dataset con formato diverso dai precedenti viene effettuata non all’interno di un
DATA STEP, ma utilizzando una particolare procedura, ossia un PROC STEP. Come si è detto in
precedenza, un programma SAS è generalmente costituito da uno o più DATA STEP e/o da uno o più
PROC STEP. Un PROC STEP richiede al software l’esecuzione di una determinata procedura,
contenuta nelle librerie del sistema SAS, ossia l’esecuzione di un programma preconfezionato in grado
di effettuare un particolare tipo di elaborazione dei dati.
Con un PROC STEP si possono leggere dataset in formati diversi dal SAS o dai dataset testuali, oppure
creare e/o elaborare dataset SAS che, a loro volta, possono essere analizzati successivamente attraverso
DATA STEP o PROC STEP.
Un PROC STEP inizia con la parola chiave “proc” seguita dal nome della procedura che si vuole
eseguire e termina con un DATA STEP, con un altro PROC STEP o con l'istruzione finale “run;”.
Tutte le volte in cui si dispone di una procedura che consente di eseguire il tipo di analisi desiderata
sarà sufficiente individuare la procedura stessa e selezionare le opzioni desiderate.
Le procedure note al SAS sono estremamente numerose, tanto che il solo modulo “Base” ne contiene
una settantina, a cui si aggiungono numerose altre procedure disponibili nei moduli più specializzati in
determinati tipi di elaborazione dei dati.
In generale un qualsiasi PROC STEP ha le seguenti caratteristiche
- Comincia sempre con la parola chiave “proc”;
- Si compone di un insieme di istruzioni;
- Produce un output di default sulla finestra di visualizzatore dei risultati;
- Può produrre un output più complesso o più leggero utilizzando le opzioni (di default le procedure
calcolano gli indici statistici più noti, ma se ne possono richiedere altri, attraverso specifiche opzioni)
40
3.5 La Proc IMPORT
La lettura di dataset esterni con un formato diverso dal SAS e dai dataset testuali viene effettuata
mediante la proc import all’interno della quale è necessario indicare al software le medesime
informazioni già viste nei casi precedenti, ossia il percorso da seguire (che non può essere più lungo di
201 caratteri) e il nome esatto del dataset (completo di estensione) a cui, questa volta, va aggiunto
anche il formato del dataset.
La sintassi della procedura è
PROC IMPORT DATAFILE="filename" | TABLE="tablename"
OUT=<libref.>SAS data set <(SAS data set option(s))>
<DBMS=identifier> <REPLACE>;
dove bisogna scegliere fra le due parole chiave DATAFILE oppure TABLE che servono per specificare
se si tratta di:
- un dataset: in questo caso si usa l’istruzione datafile = <nome_del_dataset>)
- una tabella: in questo caso si usa l’istruzione datatable = <nome_della_tabella>)
L’opzione “out=” serve per definire il nome del dataset SAS che viene creato dalla lettura del dataset e
che può essere sia temporaneo, sia permanente (a seconda della libreria associata). Queste istruzioni
possono essere completate con ulteriori opzioni facoltative relative alle caratteristiche del dataset che si
crea.
L’opzione “dbms=” serve per indicare al software il formato dei dati o della tabella da importare e può
assumere le determinazioni riportate nella prima colonna della tabella 3.5.1, mentre nella seconda
colonna della stessa tabella è specificata l’estensione del dataset (leggibile cliccando sul dataset con il
tasto destro del mouse e selezionando “proprietà”). In queste dispense ci si occuperà dei soli file Excel
con estensione “.xls”, ma tutti i discorsi rimangono validi anche per altri tipi di file.
L’opzione “replace” è opzionale e serve per sovrascrivere il dataset importato. Se non si usa questa
opzione un’eventuale seconda esecuzione dello stesso programma il SAS dà una segnalazione di errore,
avvertendo che il dataset in questione è già stato creato, per cui è generalmente preferibile inserire tale
opzione.
41
Tabella 3.5.1
Codifica dei dataset
Identificativo
DBMS Descrizione dataset
Estensione
dataset
ACCESS Microsoft Access 2000, 2002, 2003, 2007, 2010, and later table. The ACCESS LIBNAME
engine is used when DBMS=ACCESS.
.mdb
.accdb
ACCESSCS Microsoft Access table connecting remotely through SAS PC Files Serverusing the PCFILES
LIBNAME engine.
.mdb
.accdb
CSV Delimited file with comma-separated values .csv
DBF dBASE 5.0, IV, III+, and III files .dbf
DBFMEMO dBASE 5.0, IV, III+, and III files with memos FoxPro and Visual FoxPro files with memos
.dbf
.fpt
.dbt
DLM Delimited file (default delimiter is a blank) .*
DTA Stata file .dta
EXCEL Microsoft Excel 97, 2000, 2002, 2003, 2007, 2010, and later workbook using the LIBNAME
statement.
.xls
.xlsb
.xlsm
.xlsx
EXCEL4
EXCEL5 Microsoft Excel 4.0, Excel 5.0 or 7.0 (95) workbook. .xls
EXCELCS Microsoft Excel workbook connecting remotely through SAS PC Files Server. .xls,.xlsx,
.xlsb, xlsm
JMP JMP files in Version 7 and later format. .jmp
PARADOX Paradox DB files .db
PCFS (SAS PC
Files Server)
Microsoft Excel workbook files, JMP files, SPSS files, and Stata files connecting remotely
through SAS PC Files Server.
.xls, .jmp, .sav,
.dta
SAV SPSS file .sav
TAB Delimited file (tab-delimited values) .txt
WK1 Lotus1-2-3 Release 2 spreadsheet .wk1
WK3 Lotus 1-2-3 Release 3 spreadsheet .wk3
WK4 Lotus 1-2-3 Release 4 or 5 spreadsheet .wk4
XLS
Microsoft Excel 5.0, 95, 97, 2000, 2002, or 2003 workbook using file formats
Note: Transcoding is not supported for DBMS=XLS. Attempted execution of this operation
yields unpredictable results. Use DBMS=EXCEL or DBMS=EXCELCS with the SAS PC Files
Server as an alternative. Or, if your file has more than 255 columns, save the .xls file as .xlsx to
support transcoding.
.xls
XLSX Microsoft Excel 2007 and later workbook using file formats
42
Esempio 3.5.1
Considerato il dataset excel “occup.xls” contenuto in “C:\es_MRS” un programma in grado di creare
un dataset SAS temporaneo denominato “occupati” è il seguente
proc import datafile="c:\es_MRS\occup.xls"
dbms=XLS replace
out=occupati;
proc print;
run;
Esempio 3.5.2
Si consideri il dataset excel “brothers.xls”, contenuto nella directory “c:\es_MRS” che riporta i dati
relativi a 25 coppie di fratelli sui quali si sono rilevate le variabili:
- identificativo della coppia (“ident”),
- lunghezza (“l1”) della testa del primo fratello,
- larghezza (“b1”) della testa del primo fratello,
- lunghezza (“l2”) della testa del secondo fratello,
- larghezza (“b2”) della testa del secondo fratello,
dove tutte le variabili relative alla dimensione della testa sono espresse in millimetri.
Per creare un dataset permanente SAS nella medesima directory e per vederne il contenuto a terminale
si potrebbero utilizzare le istruzioni riportate nel riquadro seguente
libname libr1 "c:\es_MRS\";
proc import datafile="c:\es_MRS\brothers" out=libr1.fratelli dbms=xls replace;
proc print;
run;
Il dataset ottenuto risulta il seguente
43
Oss ident l1 b1 l2 b2
1 1 191 155 179 145
2 2 195 149 201 152
3 3 181 148 185 149
4 4 183 153 188 149
5 5 176 144 171 142
6 6 208 157 192 152
7 7 189 150 190 149
8 8 197 159 189 152
9 9 188 152 197 159
10 10 192 150 187 151
11 11 179 158 186 148
12 12 183 147 174 147
13 13 174 150 185 152
14 14 190 159 195 157
15 15 188 151 187 158
16 16 163 137 161 130
17 17 195 155 183 158
18 18 186 153 173 148
19 19 181 145 182 146
20 20 175 140 165 137
21 21 192 154 185 152
22 22 174 143 178 147
23 23 176 139 176 143
24 24 197 167 200 158
25 25 190 163 187 150
44
Esercizi riepilogativi
Esercizio 3.1
Creare il dataset temporaneo “neet” a partire dal dataset SAS relativo ai tassi regionali NEET che è
stato creato nell’esercizio 2.3. Visualizzare il contenuto del dataset a terminale formattando la variabile
neet in modo che sia composta da 2 cifre intere, il punto decimale e da due cifre decimali.
Soluzione
data neet;
set "c:\es_MRS\tasso_neet.sas7bdat";
proc print;
format neet comma5.2;
run;
Esercizio 3.2
Creare il dataset temporaneo vecchi_cell a partire a partire dal dataset testuale cellulari.txt (che si trova
nella directory "c:\es_MRS”) sapendo che le informazioni contenute su ciascuna riga riportano il
modello del telefono (variabile alfabetica), il peso in grammi, la lunghezza in millimetri, il numero di
suonerie disponibili, il numero di minuti di autonomia della batteria in standby e i minuti di
conversazione prima che la batteria si scarichi. Denominare le variabili rispettivamente modello, peso,
lungh, num_suon, num_min1 e num_min2. Visualizzare il contenuto del dataset a terminale.
Soluzione
data vecchi_cell;
infile 'C:\es_MRS\cellulari.txt';
input modello $ peso lungh num_suon num_min1 num_min2;
proc print;
run;
45
Esercizio 3.3
Creare il dataset temporaneo “grano” a partire dal dataset testuale grano1.txt (che si trova nella
directory "c:\es_MRS”) sapendo che le informazioni su una singola unità statistica sono contenute su 4
righe successive, la prima delle quali (alfabetica) riporta la varietà del grano, mentre le 3 successive i
valori di 3 diverse variabili quantitative. Denominare le variabili rispettivamente: specie, x1, x2 e x3.
Visualizzare il contenuto del dataset a terminale.
Soluzione
data grano;
infile 'c:\es_MRS\grano1.txt'; /*il SAS non distingue fra minuscole e maiuscole*/
input specie $ / x1 x2 x3;
proc print;
run;
Esercizio 3.4
Creare il dataset temporaneo “FILM” a partire dal dataset Excel “MOVIES.xls” (nella directory
"c:\es_MRS”) che contiene al suo interno informazioni su alcuni film. Visualizzare il contenuto del
dataset a terminale.
Soluzione
proc import datafile="c:\es_MRS\MOVIES.xls"
dbms=XLS replace
out=FILM;
proc print;
run;
Esercizio 3.5
Creare il dataset permanente “dati_orsi” a partire dal dataset Excel “orsi.xls” contenuto nella directory
"c:\es_MRS” che contiene i valori di alcune variabili rilevate su 19 orsi. Visualizzare il contenuto del
dataset a terminale.
46
Soluzione
libname libr1 "c:\es_MRS\";
proc import datafile="c:\es_MRS\orsi.xls"
dbms=XLS replace
out=libr1.dati_orsi;
proc print;
run;
Esercizio 3.6
Creare il dataset temporaneo “fumo” a partire dal dataset “smoking.xls” contenuto nella directory
"c:\es_MRS” che contiene i valori di quattro variabili rilevate su 6 individui, dove ”sbp” indica la
pressione sistolica, “male” assume il valore 1 se il soggetto è maschio e il valore 0 se femmina,
“smoker” assume valore 1 se il soggetto è un fumatore e 0 altrimenti, “age” indica l’età. Visualizzare il
contenuto del dataset a terminale.
Soluzione
proc import datafile="c:\es_MRS\smoking.xls" out=fumo dbms=XLS replace;
proc print;
run;
L’output ottenuto è
Oss sbp male smoker age
1 131 1 1 34
2 132 1 1 36
3 122 1 0 30
4 119 0 0 32
5 123 0 1 26
6 115 0 0 23
top related