Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno...

32
Introduzione a STATA Silvia Sartorelli Dipartimento di Scienze Statistiche Universit` a di Padova Indice 1 Struttura e sintassi 3 1.1 Introduzione .............................. 3 1.2 Indicazioni tipografiche ........................ 3 1.3 Alcuni elementi fondamentali .................... 3 1.4 Il linguaggio .............................. 5 1.5 File di do e di log .......................... 6 2 Acquisizione dei dati 8 2.1 use ................................... 8 2.2 insheet ................................ 8 2.3 infile ................................. 9 2.4 infix ................................. 10 2.5 save .................................. 10 2.6 Utili comandi di controllo ...................... 10 3 Manipolazione dei dati 12 3.1 encode e decode ........................... 12 3.2 generate ............................... 12 3.3 recode ................................. 14 3.4 Variabili di tipo data ......................... 14 3.5 keep, drop e rename ......................... 15 3.6 sort .................................. 16 3.7 append e merge ............................ 16 4 I grafici 18 4.1 Esportazione dei grafici ........................ 19 5 Alcuni comandi di base 21 5.1 Indicatori univariati .......................... 21 5.2 Tabelle ................................. 21

Transcript of Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno...

Page 1: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

Introduzione a

STATA

Silvia Sartorelli

Dipartimento di Scienze StatisticheUniversita di Padova

Indice

1 Struttura e sintassi 3

1.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Indicazioni tipografiche . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Alcuni elementi fondamentali . . . . . . . . . . . . . . . . . . . . 31.4 Il linguaggio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.5 File di do e di log . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Acquisizione dei dati 8

2.1 use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.2 insheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3 infile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.4 infix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.5 save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.6 Utili comandi di controllo . . . . . . . . . . . . . . . . . . . . . . 10

3 Manipolazione dei dati 12

3.1 encode e decode . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.2 generate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.3 recode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.4 Variabili di tipo data . . . . . . . . . . . . . . . . . . . . . . . . . 143.5 keep, drop e rename . . . . . . . . . . . . . . . . . . . . . . . . . 153.6 sort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.7 append e merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4 I grafici 18

4.1 Esportazione dei grafici . . . . . . . . . . . . . . . . . . . . . . . . 19

5 Alcuni comandi di base 21

5.1 Indicatori univariati . . . . . . . . . . . . . . . . . . . . . . . . . . 215.2 Tabelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Page 2: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

5.3 Matrici di correlazione . . . . . . . . . . . . . . . . . . . . . . . . 225.4 Regressione lineare . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6 L’interfaccia grafica 24

7 Breve sommario di comandi 27

7.1 Operatori logici ed aritmetici . . . . . . . . . . . . . . . . . . . . . 277.2 Tabelle riassuntive . . . . . . . . . . . . . . . . . . . . . . . . . . 28

7.2.1 acquisizione e salvataggio di dataset . . . . . . . . . . . . . 287.2.2 manipolazione dei dati . . . . . . . . . . . . . . . . . . . . 297.2.3 procedure descrittive . . . . . . . . . . . . . . . . . . . . . 307.2.4 help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Prefazione

Lo scopo di questo quaderno e quello di avviare studenti e tesisti all’uso delpacchetto statistico STATA.

Si tratta di un testo introduttivo che non pretende di sostituire manuali o altritesti piu articolati, ma nasce con lo scopo di mettere l’utente in grado di coglierele caratteristiche fondamentali del programma per proseguire autonomamentel’approfondimento delle procedure che gli saranno necessarie per lo svolgimentodel proprio lavoro.

Spunto ed aiuto per il presente lavoro e stata l’analoga Introduction to Statadi Jeroen Weesie dell’Universita di Utrecht.

Ringrazio tutti quelli che mi hanno gia aiutato e quelli che lo faranno in futurocon utili suggerimenti.

Padova, lı 15 novembre 2006

Silvia Sartorelli

Questa opera viene rilasciata sotto la licenza Creative Commons: Attribuzione - Non commerciale - Con-dividi allo stesso modo 2.5 Italia. Il fruitore e libero di riprodurre, distribuire, comunicare al pubblico, esporrein pubblico, rappresentare, eseguire e recitare quest’opera e di modificare quest’opera. Alle seguenti condizioni:deve attribuire la paternita dell’opera nei modi indicati dall’autore o da chi ha dato l’opera in licenza; nonsi puo usare quest’opera per fini commerciali; se si altera o trasforma quest’opera, o se la si usa per crearneun’altra, si puo distribuire l’opera risultante solo con una licenza identica a questa.

Ogni volta che si usa o si distribuisce quest’opera, si deve farlo secondo i termini di questa licenza, che vacomunicata con chiarezza. In ogni caso, si puo concordare col titolare dei diritti d’autore utilizzi di quest’operanon consentiti da questa licenza.

Nothing in this license impairs or restricts the author’s moral rights.

2

Page 3: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

1 Struttura e sintassi

1.1 Introduzione

STATA e un moderno e ricco programma per un amplissimo panorama di analisistatistiche, la creazione di grafici e la manipolazione di dati. Nasce per l’utilizzo alinea comando ma le ultime versioni offrono anche la possibilita di eseguire un’a-nalisi completa, dall’acquisizione dei dati all’esportazione dei risultati, attraversomenu e finestre di dialogo.

In questa dispensa si descriveranno brevemente le principali funzioni via lineacomando, quindi si presenteranno anche le caratteristiche dell’interfaccia grafica.La versione di riferimento e STATA/SE 9.2.

1.2 Indicazioni tipografiche

I comandi, gli operatori e le variabili di sistema saranno scritti con carattere

tipografico; i nomi generici di file e variabili e in generale laddove un’espres-sione sostituisce qualcosa che andra inserito dall’utente sara scritto in italico.Infine, le linee di comando negli esempi di sintassi saranno isolate dal testo eprecedute da un punto1. Ad esempio:

. comando file / variabile

1.3 Alcuni elementi fondamentali

Interfaccia All’avvio STATA apre 4 finestre principali: “Command”, “Resul-ts”, “Review” e “Variables”(come si vede nella figura 1).

I comandi vengono inseriti tramite tastiera nella finestra denominata “Com-mand” e mandati in esecuzione con il tasto Invio ; tutti i comandi vengono me-morizzati in un buffer di memoria, visibile nella finestra denominata “Review”e da cui possono essere richiamati (cliccando col mouse direttamente sul singolocomando oppure dalla finestra “Command” uno alla volta in ordine inverso conPagUp e PagDown ) per essere mandati in esecuzione di nuovo.

Informazioni sulla sessione di lavoro, i risultati dei comandi, compresa lasegnalazione di eventuali errori, vengono visualizzati nella finestra denominata“Results”.

Nella finestra “Variables” comparira la lista delle variabili contenute neldataset attivo.

Interruzioni Si possono interrompere processi avviati (liste troppo lunghe, ela-

borazioni che richiedono troppo tempo) con la combinazione di tasti Ctrl + Break 2.

1Il punto non fa parte della sintassi ma e in analogia a quanto compare nella finestra“Results” man mano che si procede con una sessione di lavoro

2 Ctrl + Pausa/Interr sulle tastiere italiane

3

Page 4: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

Figura 1: Interfaccia di STATA all’avvio

Se invece si vuole semplicemente omettere la visualizzazione di un output, bastapremettere quietly al comando in questione.

Chiudere STATA Per chiudere una sessione di lavoro il comando e exit maSTATA non permette di chiudere se prima non si sono salvati i dati che presu-mibilmente sono stati modificati. Per uscire senza essere costretti a salvare, ilcomando e:

. exit, clear

Identificatori Un identificatore, ossia il nome di un comando o di una varia-bile, puo essere al massimo di 32 caratteri (caratteri, numeri e l’underscore) incui il primo elemento e preferibilmente un carattere. STATA e case-sensitive, os-sia distingue tra maiuscole e minuscole (var1 e diverso da Var1). Quasi tutti icomandi di STATA sono in minuscolo.

Abbreviazioni In generale, in STATA si possono usare abbreviazioni di coman-di e variabili fintanto che non si creino ambiguita su cio a cui ci si riferisce.

Log-files E possibile memorizzare tutti i comandi inviati ed il relativo outputin un file di testo esterno.

4

Page 5: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

Do-files E possibile predisporre dei file che contengono una sequenza di co-mandi e mandarli in esecuzione in modo da risparmiarsene la digitazione. Questoe utile quando e necessario usare ripetutamente la stessa sequenza di comandi.

Dataset attivo In STATA si lavora con un dataset alla volta; quello attivo equello che viene esplicitamente caricato o acquisito e le cui variabili compaiononella finestra “Variables”. Se si deve lavorare con altri file e necessario primaripulire la memoria con il comando clear (eventualmente dopo aver salvato).

Working directory STATA considera come propria directory di lavoro prede-finita quella che viene riportata sulla barra di stato (l’ultima barra ai piedi dellafinestra). Si puo scegliere la propria working directory inserendone il percorsocompleto nelle proprieta del collegamento con cui si lancia il programma, in mo-do che si apra automaticamente dove si desidera e si puo comunque modificarlain qualunque momento successivo della sessione di lavoro con il comando cd.

1.4 Il linguaggio

Con poche eccezioni, la sintassi base del linguaggio di STATA e:

. [by varlist:]command [varlist][=exp][if exp][in range][weight][,options]

dove le parentesi quadre denotano componenti opzionali. In questo schema,varlist indica una lista di nomi di variabili, command indica un comando, expindica un’espressione algebrica, range indica un intervallo di osservazioni, weightindica un’espressione per attribuire un peso alle osservazioni e options indica unalista di opzioni.

varlist : la maggior parte dei comandi che accettano una lista di variabili nonnecessitano che questa sia esplicitmante indicata. Se non appare alcunalista, tali comandi assumono che la lista sia all, che e un’abbreviazione perindicare tutte le variabili del dataset caricato. Per i comandi che alterano odistruggono dati, STATA richiede che la lista di variabili sia esplicitamenteindicata

by varlist: : questo prefisso fa in modo che STATA ripeta il comando specifi-cato per ogni sottoinsieme individuato dalle modalita della/e variabile/iindicata/e. I dati devono essere gia ordinati secondo tale/i variabile/i

if exp : si restringe l’esecuzione di un comando a quelle osservazioni per le qualiil valore dell’espressione specificata e vera

in range : si restringe l’esecuzione del comando ad uno specifico intervallo di os-servazioni. La specificazione dell’intervallo ha la seguente forma: #1[/#2],dove #1 e #2 sono numeri che indicano la prima e l’ultima osservazionecoinvolte

5

Page 6: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

=exp : specifica il valore che deve venir assegnato ad una variabile ed e usataprincipalmente con i comandi generate e replace

weight : indica il peso da assegnare a ciascuna osservazione. La sintassi e:[weightword=exp], dove le parentesi quadre vanno scritte e con weightwordsi intende uno dei possibili tipi di peso specificabili

options : molti comandi prevedono delle proprie specifiche opzioni, queste siindicano di seguito ad una virgola alla fine del comando

1.5 File di do e di log

Quelli che vengono chiamati i file di do e di log sono molto utili nell’utilizzodi STATA. I file di log mantengono traccia di cio che si e richiesto ed i relativirisultati durante una sessione di lavoro. I file do sono utili quando si devonoripetere lunghe serie di comandi e/o si devono ripetere le stesse analisi su nuovio modificati dataset.

La sintassi per la creazione di un file di log e:

. log using nomedelfiledilog

dove con nomedelfiledilog si indica il nome che si e scelto per il file di log. Eutile scegliere nomi che rievochino il contenuto della sessione di lavoro memo-rizzata; STATA vi associera automaticamente l’estensione .smcl. Se si indica unnome semplice questo verra memorizzato nella working directory, se si desiderasalvarlo altrove, bisognera indicare un nome completo di percorso, racchiuso travirgolette.

Di default verra memorizzato in tale file tutto cio che compare nella fi-nestra dei risultati; se si desidera quindi ricordare solo alcune cose possiamointerrompere e far riprendere la memorizzazione piu tardi:

. log close

per poi riaprirlo e aggiungere informazioni o rimpiazzarle.

. log using nomedelfiledilog, append

. log using nomedelfiledilog, replace

C’e la possibilita di inserire commenti semplicemente facendo precedere qualsiasicosa si scriva nella finestra “Command” dal segno *.

Quello che invece viene chiamato un do-file e un insieme di comandi nellaforma e nell’ordine che si sarebbero usati in una sessione di lavoro, memorizzatoin righe successive di un file di testo. Qualsiasi comando di STATA puo far partedi un do-file.

Trattandosi di un normale file di testo puo essere scritto con un qualsiasieditor, l’importante e che venga memorizzato con un comando per riga, in quanto

6

Page 7: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

il tasto di Invio per STATA ha il significato di mandare in esecuzione il comandoin oggetto. Se i comandi sono troppo lunghi e devono stare su piu righe si puomomentaneamente sostituire il delimitatore tra i comandi con un carattere anostra scelta che va dichiarato prima di essere utilizzato; nel seguente esempio siimmagina di sostituire l’ Invio con il punto e virgola:

. #delimit ;

. use ‘‘filedidati’’;

. gen newvar;

. save ‘‘filedidatimodificati’’;

. #delimit cr

. clear

Si noti che il comando #delimit e valido solo nei do-file e che i punti non

fanno parte della sintassi.

7

Page 8: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

2 Acquisizione dei dati

Ci sono tre comandi fondamentali per l’acquisizione di dati in STATA.

use : e per il caricamento di dati che sono gia in formato STATA

insheet : e per fogli elettronici salvati come .csv o tab-delimited da programmicome excel

infile : e per i dati grezzi, detti in formato piatto, memorizzati in ASCII mane .csv ne tab-delimited

2.1 use

Il comando use legge dati gia memorizzati in formato STATA e quindi con esten-sione .dta. La sintassi e:

. use ‘‘nomecompletodelfile.dta”

Attenzione che e necessario utilizzare le virgolette e non singoli apici. Se invece ilfile si trova nella working directory allora e sufficiente richiamarlo col suo nome,senza estensione e senza usare le virgolette.

2.2 insheet

Il comando insheet e molto utile per leggere dati salvati come .csv o tab-delimited da un foglio elettronico, ossia quando il delimitatore tra i campi e unavirgola o una tabulazione. E necessario, pero, rispettare alcuni accorgimenti:

• la prima riga del file deve essere costituita dai nomi delle variabili, chedevono essere al massimo di 32 caratteri e non iniziare per numero o uncarattere speciale; sulla seconda riga deve esserci la prima osservazione

• nel foglio elettronico i dati mancanti devono essere memorizzati come cellavuota, non sostituiti da spazi, punti o altri caratteri non numerici; 9 o 99possono andare bene, a meno che non si confondano con possibili valorivalidi della variabile

• virgole nei numeri o nelle stringhe possono creare problemi perche STATA liconfonde con delimitatori dei valori, oppure variabili numeriche possonoessere considerate di tipo carattere; bisogna risolvere questo problema nelfoglio elettronico, prima di procedere al salvataggio

• il file originale deve essere esplicitamente salvato (da excel, p.e.) comeTab-delimited o Comma separated values

8

Page 9: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

• il delimitatore tra i campi deve essere una virgola o una tabulazione e nonlo spazio; da excel e possibile salvare i file con estensione .csv e scegliereun delimitatore diverso (p.e. il punto e virgola), in questi casi insheetnon funzionera correttamente a meno di non usare l’opzione delimiter eindicare il carattere che effettivamente separa i campi

• non devono esserci celle vuote alla fine delle righe perche potrebbe esserememorizzato un numero sbagliato di valori

La sintassi per l’acquisizione di file .csv o tab-delimited e:

. insheet using ‘‘nomecompletodelfile’’

Se il delimitatore e diverso da tabulazione e virgola, ed e, ad esempio, un puntoe virgola bisogna aggiungere l’opportuna opzione:

. insheet using ‘‘nomecompletodelfile’’, delimiter(‘‘;’’)

2.3 infile

Con questo comando si acquisiscono dati memorizzati in file ASCII che soddisfanole seguenti caratteristiche:

• il file non deve avere i nomi delle variabili sulla prima riga

• i valori delle variabili di tipo carattere che contengono spazi al loro internodevono essere racchiusi tra virgolette

• i numeri possono presentare segni meno e virgole ma non i segni di dollaroe percentuale

• il comando suppone che i campi siano separati da spazi e che i dati mancantisiano sostituiti da qualche carattere (p.e. un punto)

• in fase di acquisizione si possono saltare alcune variabili (comando skip)e/o condizionare il caricamento a certi valori

La sintassi e:

. infile varlist using ‘‘nomecompletodelfile’’

dove con varlist si intende l’elenco delle variabili con i nomi che saranno utilizzatiall’interno di STATA. Se una variabile e di tipo carattere bisogna far precedere ilnome della variabile con str#, dove # e un numero che indica la dimensione dellavariabile carattere.

Si utilizza infile anche quando le osservazioni sono memorizzate su piurighe o, in via piu generale, quando abbiamo bisogno di acquisire dati che sono

9

Page 10: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

stati memorizzati in formati particolari ma allora e piu facile, se non addiritturanecessario, usare un dictionary file.

Sostanzialmente un dictionary file e un file di testo con estensione .dct checontiene tutte le informazioni necessarie e le precise specificazioni su quale siail file da acquisire, come sono collocate le variabili (tracciato record) e comeandranno chiamate. La sintassi e3:

. infile using ‘‘dictionary-file’’

2.4 infix

Con questo comando si acquisiscono dati che sono stati memorizzati in file ASCIIin formato fisso. Oltre al nome del file e necessario specificarne la struttura, ossiascegliere i nomi delle variabili e indicarne la posizione sulla riga. La sintassi e:

. infix specifiche using ‘‘nomecompletodelfile’’

2.5 save

Una volta acquisiti ed eventualmente modificati i dati e probabile che si desiderisalvarli e nel formato di STATA, in modo da averli prontamente disponibili insessioni di lavoro successive. La sintassi per salvare i dati in formato STATA e:

. save “nomecompletodelfile.dta”, replace

L’opzione replace e necessaria per aggiornare (e sovrascrivere) una eventualecopia gia esistente del file di dati in questione.

Anche in questo caso, se si desidera salvare nella working directory sarasufficiente specificare un nome dopo save senza virgolette e senza estensione.

2.6 Utili comandi di controllo

Una volta acquisiti i dati possiamo vederli e controllare il formato delle variabili.Il comando:

. describe

che si puo abbreviare semplicemente con la lettera d, fornisce tutte le informazionibasilari che riguardano il file e le variabili in esso contenute.

Se si desidera conoscere le caratteristiche di un file che si e gia memorizzatoin formato .dta, ma non caricato, cosa che puo essere utile nel caso si abbia ache fare con file molto grandi, allora la sintassi e:

3Si rimanda al manuale per ulteriori dettagli

10

Page 11: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

. describe using ‘‘nomecompletodelfile.dta’’

Nel caso si abbia bisogno di una maggiore quantita di memoria rispetto aquella allocata di default, e possibile modificarne i parametri per la correntesessione di lavoro, in particolare se si riceve da STATA il seguente messaggio:

. no room to add more observations

Il comando, per allocare, ad esempio, 12 megabyte e:

. set memory 12m

Se invece si desidera semplicemente “dare un’occhiata” ai dati appena acqui-siti, senza modificarli, senza compiere alcuna analisi e senza ulteriori caratteri-stiche, il comando e:

. list varlist

in cui, omettendo varlist, si ottiene la lista dell’intero dataset.Infine un comando molto utile e:

. edit

Con tale comando viene evocata una finestra grafica simile ad un foglio elet-tronico che conterra i dati del dataset attivo. Le colonne rappresentano le va-riabili e le righe le unita statistiche. Ci si puo spostare tra le celle utilizzando ilmouse o le frecce. Si possono passare dati da un foglio elettronico all’altro conle comuni funzionalita di selezione, copia ed incolla. Vi si possono immmettere emodificare dati. E possibile modificare le caratteristiche delle variabili evocando,con un doppio clic sulla colonna corrispondente, la finestra di dialogo “VariableProprieties”.

L’editor ha sette bottoni:

Preserve per memorizzare i cambiamenti se i dati sono stati modificati

Restore STATA fa automaticamente un backup dei dati nel momento in cui siavvia l’editor. Questa funzione recupera la copia di backup se si desideracancellare le modifiche effettuate

Sort ordina le osservazioni in modo crescente secondo la variabile selezionata

<< sposta la variabile selezionata in prima posizione

>> sposta la variabile selezionata in ultima posizione

Hide nasconde la variabile selezionata

Delete evoca una finestra di dialogo che permette di scegliere se cancellare lavariabile selezionata, l’osservazione selezionata o tutte le osservazioni chepresentano lo stesso valore di quell’osservazione per la variabile selezionata

11

Page 12: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

3 Manipolazione dei dati

STATA puo memorizzare i dati in formato carattere o numerico e permette dicompiere la maggior parte delle analisi solo sulle variabili numeriche. Puo suc-cedere che acquisendo i dati con insheet o infile una variabile venga lettacome carattere o stringa seppure sia un numero, per esempio se ci sono spazio punti dove non dovrebbero essercene. Per utilizzarle nelle analisi e necessarioriconvertirle in numeriche.

In generale, comunque, e frequente che le variabili non siano gia nel forma-to piu utile all’analisi e che quindi si renda necessario qualche manipolazione,aggiustamento o ricodifica. Per avere uno schema sintetico della natura e delladistribuzione di una variabile, e utile il comando:

. codebook listavariabili

3.1 encode e decode

Il comando encode va usato quando la variabile originale e in effetti una varia-bile carattere (p.e. il sesso codificato “m” e “f”) ma e necessaria una codificanumerica. Questo comando non produce variabili dummy ma assegna un numeroa ciascun gruppo identificato dalla variabile carattere. Nell’esempio che segue lavariabile originale (supponiamo di nome gender), sara ricodificata in una nuovavariabile di tipo numerico di nome sex in cui al posto dei caratteri “m” e “f” sitroveranno i numeri 1 e 2.

. encode gender, generate(sex)

L’opzione generate(nuovavar1) e necessaria.Il comando decode, al contrario, crea una nuova variabile di tipo carattere

(nuovavar2) basata sulla variabile numerica nomevar e sulle etichette attribuiteai suoi valori.

. decode nomevar, generate(nuovavar2)

3.2 generate

Il comando generate permette di creare una nuova variabile che sia il risultatodi una funzione e/o una trasformazione algebrica di altre variabili; la sintassi e:

. generate nuovavar=exp

dove con exp si intende un’espressione algebrica che puo essere combinazione divariabili esistenti, operatori e funzioni. Se si vuole sostituire completamente unavariabile esistente il comando e:

12

Page 13: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

. replace vecchiavar=exp

Si noti che:

• il nome scelto per la nuova variabile non deve essere il nome di una variabilegia esistente (a meno che non si stia usando replace)

• le espressioni di trasformazione possono essere molto complesse, basta chesiano combinazioni di variabili esistenti e di funzioni e operatori validi

• il calcolo che comprenda un dato mancante porta ad ottenere un datomancante, come pure la divisione per 0

• se vengono generati dati mancanti allora questa evenienza sara riportatanell’output; la mancanza di tale informazione implica che non sono statigenerati dati mancanti

• se si sta creando una nuova variabile di tipo carattere, la stringa va rac-chiusa tra virgolette e la dimensione della nuova variabile sara quella dellastringa assegnata

• generate puo essere abbreviato ma non replace, questo perche STATA cer-ca di evitare che i dati esistenti vengano alterati accidentalmente

Spesso i nuovi valori che una variabile assume dipendono dai valori di altrevariabili; per condizionare l’assegnazione dei nuovi valori a quelli delle variabiliesistenti si usa il comando if; la sintassi sara la seguente:

. generate nuovavar = exp if condizione

dove la condizione e un’espressione che deve essere verificata perche l’assegnazio-ne vada a buon fine.

Le espressioni di condizionamento possono essere molto complicate, valgonogli operatori logici e if puo essere usato in combinazione con in4.

In STATA e particolarmente agevole la creazione di variabili dummy:

. tab variabile1, gen(vardummy)

con questa sintassi verranno create tante variabili dummy quanti sono i livellidella variabile1 e i nomi saranno vardummy1, vardummy2, etc.

Se si e interessati a creare un’unica dummy che assuma valore 1 per undeterminato livello e 0 per tutti gli altri allora la sintassi e diversa:

. gen nuovadummy = (vecchiavar==livellodiinteresse)

4in e il comando per la selezione di sottoinsiemi di osservazioni

13

Page 14: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

3.3 recode

Quando si ha necessita di ricodificare una variabile il comando e recode; lasintassi e:

. recode nomevar regola1 [regola2] ...

dove con regola1, etc si intende il criterio di ricodifica dei valori. Ad esempiosi supponga di voler ricodificare una variabile ordinale (varordinale) con 9 classi(numeri da 1 a 9) in una con sole tre classi (numeri da 1 a 3):

. recode varordinale 1 2 3=1 4 5 6=2 *=3

in questo caso si otterra che i valori della varordinale 1, 2 e 3 verranno ricodificati(e rimpiazzati!) con il numero 1, i valori 4, 5 e 6 con il numero 2 ed i restantivalori con il numero 3. Si noti che il range poteva anche essere scritto utilizzandola barra (p.e. 1/3 che in STATA significa “da 1 a 3”) e min e max per indicare gliestremi degli intervalli.

Se non si intende perdere i valori della variabile originaria e memorizzareil risultato della ricodifica in una nuova variabile bisogna utilizzare l’opzionegenerate(newvar). Si supponga di avere una variabile (punteggio) che assumei valori dall’1 al 150 e di volerli ricodificare in una variabile classe con tre livelli(da 1 a 50, da 51 a 100 e da 101 a 150):

. recode punteggio min/50=1 51/100=2 101/max=3, gen(classe)

3.4 Variabili di tipo data

Un discorso a parte meritano le variabili che contengono date.STATA memorizza le date come numero di giorni passati dal 1◦ gennaio 1960.

Ci sono due modi per creare variabili di questo tipo a seconda di come sonomemorizzate le variabili originali. Nel caso si abbiano variabili separate pergiorno, mese e anno allora si puo usare la funzione mdy() per creare la variabiledata (nel senso di tempo trascorso dal 1◦ gennaio 1960); giorno, mese e annodevono essere numeriche e la sintassi e:

. generate variabiledata1 = mdy(varmese,vargiorno,varanno)

naturalmente i nomi delle variabili che contengono le informazioni su giorno,mese e anno non sono importanti mentre e fondamentale l’ordine in cui vannorichiamate nella funzione; attenzione inoltre che l’anno deve essere memorizzatocon 4 cifre.

Se invece il dataset originale contiene una data memorizzata come stringa,allora si usa la funzione date(). Si supponga di avere una variabile di tipostringa di nome vecchiadata e di volere la corrispondente come tempo trascorsodal 1◦ gennaio 1960; la sintassi e:

14

Page 15: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

. generate nuovadata = date(vecchiadata, ‘‘mdy’’)

dove ‘‘mdy’’ indica il formato per leggere correttamente la data, quindi varispettato l’ordine in cui giorno (d), mese (m) e anno (y) si presentano nellavariabile originale e le virgolette fanno parte della sintassi.

Infine si puo usare il comando format per far visualizzare come date dicalendario le date memorizzate come tempo trascorso dal 1◦ gennaio 1960:

. format variabiledata %formato

un esempio di formato di data e %d, per cui la data 31 agosto 1976, che corri-sponde al valore in una variabile di tipo data “6087” viene poi visualizzata come31aug1976. Per tutti gli altri formati possibili si veda il manuale.

Per lavorare con le date STATA propone anche altre utili funzioni; quindiavendo come argomento una variabile di tipo data:

• day() restituisce il numero del giorno del mese

• month() resituisce un numero da 1 a 12

• year() restituisce l’anno

• dow() restituisce un numero tra 0 (domenica) e 6 (sabato)

3.5 keep, drop e rename

A volte capita di voler eliminare alcune variabili che non risultano utili ai finidella nostra analisi e/o rinominare quelle che restano.

Possiamo scegliere se tenere le variabili di interesse:

. keep varlist

o eliminare quelle inutili:

. drop varlist

dove con varlist si intende la lista delle variabili da tenere (o eliminare), che puocontenere quanti elementi si desidera; e chiaro che il risultato sara lo stesso e siscegliera un comando o l’altro a seconda della comodita del momento. Si facciaattenzione, pero, perche le variabili eliminate in questo modo non potranno essererecuperate a meno di ripulire il buffer di lavoro e ricaricare il dataset senza averlosovrascritto.

Questi stessi comandi possono essere utilizzati anche per la cancellazione diosservazioni:

. drop if condizione

15

Page 16: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

e analogamente

. keep if condizione

Verranno tenute (o eliminate) le osservazioni per le quali e vera la condizionespecificata.

Quando invece si desidera rinominare una variabile esistente il comando e:

. rename nomevecchio nomenuovo

e si puo rinominare una sola variabile alla volta.

3.6 sort

Alcune procedure richiedono che le osservazioni siano in un determinato ordineprima di procedere. Il comando sort pone le osservazioni del dataset attivo inordine crescente, secondo la variabile specificata.

. sort variabile

Si puo ordinare il dataset secondo piu variabili nidificate. Se si pensa di averbisogno di tornare all’ordine originario, e buona norma creare una variabile ditipo identificativo, ad esempio memorizzando l’ordine delle osservazioni all’ac-quisizione, informazione ricavabile dalla variabile di sistema n:

. gen identificatore= n

3.7 append e merge

Talvolta i dati che sono necessari per le analisi sono dislocati su file diversi. Icasi sono due:

1. si desidera aggiungere nuove osservazioni, su cui sono state rilevate le stessevariabili del dataset attivo

2. si desidera aggiungere informazioni (quindi nuove variabili), rilevate sullestesse osservazioni gia caricate

Si sta parlando comunque di dati che sono gia stati precedentemente acquisiti inSTATA e salvati in formato .dta.

Nel primo caso si usa il comando append. Si supponga di avere caricato unfile di dati e di voler aggiungere delle nuove osservazioni:

. append using ‘‘nomefiledaaggiungere’’

16

Page 17: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

le informazioni contenute nel nuovo dataset saranno memorizzate alla fine deldataset gia caricato. Qualsiasi variabile con nome differente nei due datasetpresentera dei dati mancanti per le osservazioni provenienti dall’altro dataset.

Nel secondo caso, invece, in cui abbiamo le stesse osservazioni ma nuove varia-bili, il comando e merge. Se non utilizziamo alcuna chiave per far corrisponderele osservazioni del primo (quello caricato in memoria, detto “master dataset”)con quelle del secondo (detto “using dataset”), merge compira un semplice ac-coppiamento riga per riga ma questo non ci garantisce che le informazioni di undataset si riferiscano esattamente alla stessa osservazione dell’altro. Per poterutilizzare una chiave e necessario che questa esista o si possa creare sulla basedelle informazioni esistenti e che sia presente e dello stesso formato in entrambii dataset. Prima di procedere, inoltre, e necessario controllare che magari nonsiano stati utilizzati gli stessi nomi di variabili per informazioni che invece sonoaddizionali, in tal caso, infatti, STATA presevera quelle del dataset caricato e nonaggiungera quelle del nuovo; bisognera quindi rinominare le variabili prima dicompiere l’unione.

In generale la sintassi per compiere l’unione di due dataset e:

. use primofile

. sort variabilechiave

. merge variabilechiave using secondofile

dove il secondo file deve essere gia memorizzato e ordinato secondo la stessachiave.

STATA creera automaticamente una variabile chiamata merge che indicherail risultato dell’unione osservazione per osservazione; di seguito il significato deivalori assumibili da merge:

1 indica le osservazioni del primo dataset che non hanno trovato la corrispet-tiva nel secondo

2 indica le osservazioni del secondo dataset che non hanno trovato la corri-spettiva nel primo

3 indica le osservazioni che risultano appaiate

4 indica le osservazioni che risultano appaiate e per le quali valori mancantidel primo dataset sono stati sostituiti da valori validi trovati nel secondo

5 indica le osservazioni che risultano appaiate e per le quali valori del primodataset sono in contraddizione con valori del secondo

Le modalita 4 e 5 possono presentarsi solo nel caso si sia utilizzata l’opzioneupdate, tramite la quale si aggiornano i dati mancanti del “master dataset” conquelli provenienti dall’“using dataset”.

17

Page 18: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

4 I grafici

STATA consente di creare numerosi tipi di grafici; offre una grande flessibilita nonsolo per l’impaginazione dei grafici ma soprattutto per il loro contenuto. Integranei grafici le curve di aggiustamento e di lissage, gli intervalli di confidenza e tuttigli altri elementi grafici associati ai dati. Si possono modificare i titoli, i colorio i simboli in tutta semplicita grazie alle finestre di dialogo. Infine, e possibileesportare i risultati in formati diversi compresi PostScript e PNG.

Di seguito si cerchera di focalizzare l’attenzione su alcuni aspetti fonda-mentali mentre si lascia all’utente l’esplorazione nella vasta scelta di opzionie caratterizzazioni.

I grafici sono memorizzati nella memoria centrale o sul disco fisso. Quandosi disegna un grafico questo verra conservato in memoria centrale con il nomeGraph e verra sostituito dal comando graph successivo.

STATA permette pero di avere piu finestre grafiche contemporaneamente; l’op-zione name() crea un grafico dotato di un proprio nome e presentato in unapropria finestra.

. graph twoway scatter nomevar1 nomevar2, name(nomegrafico1)

Se non e salvato esplicitamente, qualsiasi grafico sara cancellato alla chiusuradella sessione di lavoro ed e cancellato anche nel caso si usino i comandi clearo discard.

E possibile salvare i propri grafici su disco fisso in vari modi. Si puo salvareil contenuto corrente della finestra grafica con il comando:

. graph save grafico1salvato.gph

oppure direttamente dallo stesso comando con cui lo si crea:

. graph twoway scatter nomevar1 nomevar2, saving(grafico2salvato.gph)

Qualsiasi grafico salvato puo essere aperto all’interno di STATA con il coman-do:

. graph use grafico1salvato.gph, name(grafico1)

ma si noti che senza l’opzione name verrebbe aperto in Graph e quindi soggettoa successive sovrascrizioni.

STATA offre comandi per gestire i grafici, sia quelli in memoria centrale chememorizzati su disco:

graph dir fornisce l’elenco dei grafici conservati sia in memoria che su disco(nella working directory)

18

Page 19: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

graph describe fornisce dettagli riguardanti un grafico specificato, senza spe-cificazione viene descritto l’ultimo creato

graph drop nomegrafico cancella dalla memoria centrale il grafico indicato

graph rename nomevecchiografico nomegrafico cambia il nome di un grafi-co in memoria centrale

graph copy nomegrafico produce una copia del grafico indicato

graph export esporta il grafico nella finestra corrente in un file

graph combine permette di combinare in un unico grafico grafici presenti inmemoria centrale o su disco

Tutti i comandi appena descritti sono accessibili anche via menu e finestre didialogo: Graphics >> Manage Graphs >> ...

Tutti i comandi riguardanti i grafici iniziano con la parola graph, ma in molticasi la parola graph e opzionale. Ad esempio il comando:

. graph twoway scatter nomevar1 nomevar2

che crea un grafico di dispersione tra due variabili, puo essere ottenuto omet-tendo graph ed addirittura omettendo twoway.

Ci sono diversi tipi (“famiglie”) di grafici, ciascuno dei quali prevede poiulteriori caratterizzazioni con propri comandi specifici:

twoway per la rappresentazione di coppie di variabili quantitative

bar per la creazione di istogrammi

matrix per la creazione di grafici di dispersione

box per la creazione di boxplot (diagrammi a scatole e baffi)

pie per la creazione di grafici a torta

4.1 Esportazione dei grafici

Il modo piu semplice per esportare un grafico da STATA ad un’altra applicazio-ne e via clipboard. Dopo la creazione del grafico si deve selezionare la finestragrafica, quindi si evoca il menu con il tasto destro del mouse e si seleziona lavoce “Copy”. STATA fara una copia del file come Enhanced Metafile (EMF);questo assicura che l’applicazione che ricevera il grafico l’avra con la risoluzionepiu alta possibile. Se l’applicazione destinataria non e in grado di interpretaretale formato allora occorre cambiare alcune impostazioni: da Prefs >> Graph

Preferences si scelga l’aletta clipboard e si selezioni Windows Metafile (WMF).Dopo aver copiato il grafico nella clipboard si puo passare all’applicazione in

cui si vuole importarlo e dove lo si puo “Incollare”.

19

Page 20: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

STATA puo salvare un grafico anche come Encapsulated PostScript (EPS).Per salvarlo come tale occorre selezionare la voce File >> Save Graph... escegliere il formato .eps dalla lista proposta.

20

Page 21: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

5 Alcuni comandi di base

Supponiamo che finalmente si siano acquisiti correttamente i dati e che questisiano nella forma a noi piu utile e quindi si possa iniziare con le analisi vere eproprie.

5.1 Indicatori univariati

Con il comando summarize si ottengono i principali indicatori univariati dellevariabili elencate. Se si omette di indicare una variabile (o di fare una lista)verranno prese in considerazione tutte le variabili numeriche del dataset attivo.Se STATA indica che una variabile richiesta presenta 0 osservazioni, e probabileche sia stata erroneamente definita di tipo carattere.

L’opzione detail fornisce informazioni aggiuntive sulla distribuzione delle va-riabili ossia varianza, asimmetria, curtosi, percentili e valori estremi delle variabiliindicate.

. summarize varlist, detail

5.2 Tabelle

Il comando tabulate produce tabelle di frequenze semplici. Per ciascuna moda-lita della variabile indicata, STATA presentera nella finestra di output la frequenzaassoluta e le percentuali semplici e cumulate. Specificando due variabili si otterrauna tabella di contingenza a doppia entrata. Sono utilizzabili inoltre numeroseopzioni per ottenere, ad es. percentuali di riga e colonna, il calcolo dell’indicatoreχ

2 e di altre statistiche;

. tabulate varlist, row column chi2

per l’elenco completo delle opzioni utilizzabili si veda l’help.Nel caso si desideri ottenere una serie di tabelle di frequenza semplici, si deve

usare il comando tab1 e specificare di seguito la lista delle variabili di cui si vuolela tabella.

Se invece si desiderano tutte le combinazioni di tabelle a doppia entrata diuna lista di variabili il comando e:

. tab2 varlist

Infine puo succedere che si desideri uno schema sintetico di indicatori uni-variati relativi ad una o piu variabili di classificazione; il comando e table conl’opzione contents in cui si elencano gli indicatori desiderati e la/le variabile/isu cui si vogliono calcolare:

. table variabile/i classificazione, contents(indic1 var indic2 var...)

21

Page 22: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

5.3 Matrici di correlazione

Il comando correlate produce la matrice di correlazione o la matrice di varianzee covarianze per la lista di variabili specificate oppure per i coefficienti risultatidalla piu recente procedura di stima. Se non si specifica l’argomento alloraSTATA utilizzera tutte le variabili numeriche del dataset.

. correlate varlist

Il comando correlate esclude dal calcolo tutte le osservazioni per le qualic’e almeno un dato mancante nelle variabili indicate (esclusione listwise). Inalternativa c’e il comando pwcorr che calcola i coefficienti di correlazione contutti i dati validi coppia per coppia (esclusione pairwise). Quest’ultimo comandoriporta di volta in volta il numero di osservazioni su cui il coefficiente e statocalcolato e, su richiesta, anche la significativita e altre opzioni:

. pwcorr varlist, sig

5.4 Regressione lineare

Il comando per ottenere un’analisi di regressione lineare e regress e la suasintassi base e5:

. regress vardipendente listadivarindipendenti, opzioni

Tra le opzioni ci sono: la possibilita di sopprimere il termine costante (nocostant),di ottenere i coefficienti standardizzati (beta), di cambiare il livello degli intervallidi confidenza (level(#)) etc.

Per verificare che le variabili coinvolte e/o gli errori abbiano una distribuzionenormale si possono usare vari strumenti grafici di diagnostica, ad esempio i graficiottenuti con il comando histogram e la sua opzione normal, che sovrappone unacurva normale all’usuale istogramma:

. histogram variabile, normal

Oppure si possono richiedere boxplot, diagrammi quantile-normale e molti altri:

. graph box variabile * per i boxplot

. qnorm * per i diagrammi quantile-normale

5Si ricorda che questa e una dispensa di introduzione: in STATA esiste una lunga lista dicomandi alternativi a seconda del tipo di analisi che si sta conducendo (per modelli ARIMA,modelli con errori ARCH, modelli con molte variabili dummy, modelli Box-Cox, etc.) ma pergli approfondimenti si rimanda al manuale.

22

Page 23: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

Per verificare la forma della relazione tra le variabili coinvolte si puo usare ilcomando scatter che crea grafici di dispersione tra le variabili indicate:

. scatter variabile1 variabile2

Nel caso si giudichi utile inserire nel modello la trasformata di una variabile, conil comando ladder si ottiene uno schema con le trasformate piu comuni (cubo,quadrato, logaritmo naturale, radice quadrata e le rispettive funzioni recipro-che) e il risultato di un test di normalita. Con gladder e qladder si possonovisualizzare i relativi istogrammi e diagrammi quantile-normale.

Una volta perfezionata l’analisi con il comando predict si possono salvare ivalori predetti, i residui, le statistiche di influenza. Le opzioni di predict dipen-dono in parte dagli strumenti di stima che sono stati precedentmente utilizzati equindi vanno verificati volta per volta. La sintassi e:

. predict nuovavar, contenutodinuovavar

Il comando crea una variabile alla volta. Se non si specifica nulla creera unavariabile che contiene i valori predetti sulla base dell’ultimo modello stimatoaltrimenti salvera quello che viene specificato, come, ad esempio, i residui:

. predict varresidui, residual

23

Page 24: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

6 L’interfaccia grafica

STATA nasce come applicativo a linea-comando ma attualmente offre la possi-bilita di svolgere un’analisi completa, dall’acquisizione dei dati all’esportazio-ne dei risultati, tramite un’“amichevole”6 interfaccia grafica. Chi ha dime-stichezza con i piu noti programmi Windows non avra difficolta ad orientar-si tra i menu e le finestre di dialogo. In particolare le voci del menu Data,

Graphics e Statistics permettono di accedere a quasi qualsiasi comando diSTATA semplicemente cliccando le voci di interesse.

La barra dei menu propone le seguenti voci:

File raccoglie le voci per l’apertura, il salvataggio e la chiu-sura di file di dati, di file di do e di log, l’importazionee l’esportazione di file di dati, la stampa della finestradei risultati

Edit propone le voci per le consuete funzioni di editor, comecopia-incolla

Prefs propone voci per la gestione e la memorizzazione diimpostazioni preferenziali

Data raccoglie le voci per la completa gestione dei dati(ordinamento, unione, gestione delle variabili, etc.)

Graphics propone le voci per evocare una ricchissima scelta dipossibili grafici

Statistics propone le voci per una ricchissima scelta di analisistatistiche

User raccoglie menu e sottomenu creati secondo le sceltedell’utente

Window raccoglie le voci per la gestione delle finestreHelp raccoglie le voci per evocare i vari file di help

La barra degli strumenti (figura 2) propone le icone per un rapido accessoalle funzioni usate piu comunemente. Alcuni bottoni presentano sia un’icona cheuna freccetta: cliccando sull’icona si invia il comando relativo, cliccando sullafreccetta viene proposto un menu.

Figura 2: La barra degli strumenti

6Traduzione di user friendly: di facile utilizzo anche per l’utente meno esperto

24

Page 25: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

1 Open apre un dataset in formato STATA (.dta); cliccando sul-la freccetta propone un elenco di dataset recentementeusati

2 Save salva il dataset correntemente in memoria3 Print stampa il contenuto delle finestre “Results”, “Viewer”

o “Graph”. Cliccando sull’icona viene scelto “Results”mentre cliccando sulla freccetta viene proposto l’elencodelle finestre tra cui scegliere

4 Log Begin inizia un nuovo file di log, aggiunge ad un file di logesistente o chiude o sospende il log corrente7

5 Viewer apre il Viewer oppure porta il Viewer davanti alle fine-stre. Il Viewer e una finestra in cui si possono vede-re informazioni d’aiuto, visualizzare e stampare file dilog della corrente sessione o di sessioni di lavoro passa-te, visualizzare o stampare qualsiasi file di STATA oppu-re file ASCII, aggiungere nuovi comandi da internet edinstallare gli aggiornamenti ufficiali di STATA

6 Results porta la finestra dei risultati davanti alle altre finestre7 Graph porta la finestra dei grafici davanti alle altre finestre.

Cliccando sulla freccetta si sceglie quale tra le finestregrafiche

8 Do-file editor apre un file di do oppure porta l’editor di do-file

davanti alle altre finestre9 Data Editor apre l’editor dei dati opppure lo porta davanti alle altre

finestre10 Data Browser apre il visualizzatore dei dati o lo porta davanti alle altre

finestre11 Clear comanda a STATA di continuare quando si e mo-

mentaneamente fermato nel mezzo di un lungooutput

12 Break interrompe il processo corrente

La maggior parte delle finestre di dialogo propone gli stessi cinque tastipresenti in fondo: OK, Cancel, Submit, ? e R.

Cancel chiude la finestra di dialogo senza compiere alcuna azione

OK chiude la finestra di dialogo e manda in esecuzione il comando risultato dallacompilazione dei campi in tale finestra

Submit manda in esecuzione il comando come OK, ma lascia la finestra di dialogoaperta in modo che si possano effettuare cambiamenti e inoltrare ulterioririchieste

7Si veda il capitolo 1 per una breve spiegazione di che cos’e un file di log

25

Page 26: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

Il comando scelto nella finestra di dialogo e mandato in esecuzione esatta-mente come se fosse stato digitato in “Command”, comparira nella finestra di“Review” e sara da qui accessibile per usi futuri.

Il bottone nell’angolo in basso a sinistra con il punto di domanda permettedi accedere al sistema di “help” di STATA. Scegliendolo evochera il file di “help”del comando associato alla finestra di dialogo in questione.

Il bottone con la lettera R e il bottone di “reset”. Ogni volta che si apre unafinestra di dialogo questa riportera gli ultimi parametri che sono stati inseritiquindi R si usera quando si desidera ripulire i campi dai valori memorizzati inprecedenza.

I comandi di STATA sono evocati non solo dai menu ma anche attraverso altridue metodi. Se si ricorda il nome del comando di cui si vuole la finestra di dialogosi puo usare il seguente comando:

. db nomedelcomando

e si aprira la finestra di dialogo del comando specificato dopo db.Oppure si puo accedere alla finestra di dialogo di un comando dal relativo file

di help.Le finestre di dialogo di molti comandi prevedono anche la possibilita di

compiere delle selezioni tra le unita tramite l’aletta bt/if/in e/o di applicareun sistema di pesi alle unita coinvolte nell’analisi tramite l’aletta Weights.

STATA propone centinaia di finestre di dialogo e non e intenzione di questadispensa offrirne una panoramica completa. Si lascia all’utente la ricerca della/efunzione/i di interesse tramite l’help ma nel sommario (capitolo 7) trovera alcunischemi con i comandi piu usati ed il percorso per evocarne la finestra di dialogocorrispondente.

26

Page 27: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

7 Breve sommario di comandi

In questo capitolo si dara una breve spiegazione dei piu importanti ed usualicomandi STATA.

7.1 Operatori logici ed aritmetici

Le espressioni logiche possono contenere:

& | > < == ~= >= <=

dove & indica l’operatore AND, | indica OR e ~ indica il NOT. Si noti che si usail segno di uguaglianza doppia (==) per l’uguglianza mentre il segno singolo (=)si usa esclusivamente per l’assegnazione.

Le espressioni aritmetiche possono contenere i seguenti operatori:

+ - * / ^ ~ ( ) [ ] . _n _N

Si noti che:

• x^ y sta per xy

• −22 = −4 mentre (−2)2 = 4

• n indica il numero dell’osservazione corrente e N indica il numero totaledi osservazioni. I valori mancanti e l’uso di if non influenzano i valori din e N ma quando vengono utilizzati in combinazione con by, allora n eN si riferiscono al numero di osservazioni del gruppo corrente

• il punto (.) rappresenta il valore mancante di sistema; nel sistema inoltrei valori mancanti sono considerati come i valori piu grandi possibile per iltipo di dato in oggetto

Le piu importanti tra le funzioni matematiche utilizzabili sono:

abs() il valore assoluto

cond(x, y, z) se x e diverso da 0 allora y, altrimenti z

exp() la funzione esponenziale e()

int() l’intero ottenuto dal troncamento

round(x, y) arrotonda x in unita di y (round(.,1) arrotonda al piu vicinointero)

log() il logaritmo naturale

min(x1, x2, ...) il minimo fra x1, ..., xn

max(x1, x2, ...) il massimo fra x1, ..., xn

27

Page 28: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

sqrt() la radice quadrata

sum() la somma di tutti i valori nell’espressione tra parentesi per tutte le prece-denti osservazioni e la corrente

uniform() genera un numero casuale tra 1 e 0. Nessun argomento e richiestoma le parentesi non possono essere omesse. Il seme puo essere modificatocon set seed. Di default STATA pone come seme sempre lo stesso nume-ro quindi per ogni sessione di lavoro genera la stessa sequenza di numeri(pseudo)casuali

7.2 Tabelle riassuntive

Ogni tabella propone a sinistra i comandi STATA e a destra una breve descrizionedella funzionalita e il percorso da fare tra i menu per arrivare alla corrispondentefinestra di dialogo8

7.2.1 acquisizione e salvataggio di dataset

comando STATA descrizioneuse filename carica un file di dati di formato STATA (.dta)

File >> Open

save filename salva un file di dati in formato STATA (.dta)File >> Save

save filename, replace salva sovrascrivendo un file esistenteinsheet using filename acquisisce un dataset ASCII in cui i campi sono

separati da virgole o tabulazioniFile >> Import >> ASCII data created by a

spreadsheet

infile varlist using filename acquisisce un dataset ASCII in cui i campi sonoseparati da spaziFile >> Import >> Unformatted ASCII data

infix varlist using filename acquisisce un dataset ASCII in cui i campi sono informato fissoFile >> Import >> ASCII data in fixed

format

outfile using filename crea un datset ASCII in cui i campi sono separatida spaziFile >> Export >> ASCII text

outsheet using filename crea un datset ASCII in cui i campi sono separatida virgole o tabulazioniFile >> Export >> Comma or tab-separated

data

8Si ricorda comunque che, conoscendo il nome del comando, e possibile inserire nella finestra“Command”: db nomecomando per evocare direttamente la corrispondente finestra di dialogo

28

Page 29: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

7.2.2 manipolazione dei dati

comando STATA descrizionemerge using aggiunge variabili provenienti da un secondo dataset al

dataset attivoData >> Combine datasets >> Merge two datasets

merge chiave using aggiunge variabili provenienti da un secondo dataset aldataset attivo usando chiave come chiaveData >> Combine datasets >> Merge two datasets

append aggiunge osservazioni da un secondo dataset al datasetattivoData >> Combine datasets >> Append datasets

compress cerca di ridurre lo spazio di memoria occupato dalformato delle variabiliData >> Variable utilities >> Optimize

variable storage

expand= exp riproduce ciascuna osservazione per il numero di vol-te richieste da exp; puo risultare utile in analisi disopravvivenza

generate newvar= crea la variabile newvarData >> Create or change variables >> create

new variable

replace oldvar= rimpiazza i valori esistenti di oldvar

edit/browse apre finestre per la visualizzazione e la modifica dei datiData >> Data Editor / Data >> Data Browser

egen estensione di generateData >> Create or change variables >> create

new variable (extended)

recode nomevar ricodifica i valori di nomevarData >> Create or change variables >> Other

variable transformation commands >> Recode

categorical variable

encode nomevar, gen(new) crea una nuova variabile di tipo numerico con valoriassociati alle originali stringheData >> Create or change variables >> Other

variable transformation commands >> Encode

value label from string variable

decode nomevar, gen(new) crea una nuova variabile di tipo carattere sulla base delleetichette di una originale variabile numericaData >> Create or change variables >> Other

variable transformation commands >> Decode

string from labeled numeric variable

29

Page 30: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

sort mette le osservazioni in ordine crescente secondo una opiu variabili; i dati mancanti vengono collocati in fondoData >> Sort >> Ascending sort

rename nomeold nomenew cambia il nome di una variabileData >> Variable utilities >> Rename variable

drop varlist elimina le variabili specificate nella listaData >> Variable utilities >> Keep or drop

variables

drop if condizione elimina le osservazioni per le quali la condizionespecificata e veraData >> Variable utilities >> Keep or drop

observations

keep varlist mantiene solo le variabili specificate nella listaData >> Variable utilities >> Keep or drop

variables

keep if condizione mantiene solo le osservazioni per le quali la condizionespecificata e veraData >> Variable utilities >> Keep or drop

observations

sample # estrae un campione casuale dal dataset della dimensionepercentuale specificata dal numero indicatoStatistics >> Resampling >>Draw random sample

7.2.3 procedure descrittive

comando STATA descrizionedescribe fa la lista dei nomi delle variabili, etichette, numero di

osservazioni, etc.Data >> Describe data >> Describe variables in

memory

ds fa la lista compatta dei nomi delle variabili

list produce una stampa del contenuto del dataset attivoData >> Describe data >> List data

summarize produce indicatori univariati delle variabili numericheData >> Describe data >> Summary statistics

summ, detail produce indicatori univariati delle variabili numeriche coninformazioni aggiuntive (quantili, curtosi, simmetria, etc)Data >> Describe data >> Summary statistics

by... :summ produce indicatori univariati per sottogruppiData >> Describe data >> Summary statistics

tabulate produce tabelle di frequenze semplici e tabelle di contingenzaa doppia entrata

30

Page 31: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

Statistics >> Summaries, tables & tests >> Tables

>>... One Way tables oppure ...Two-way tables with

measures of association

table produce tabelle a piu entrate di indicatori univariati (con unamigliore formattazione)Statistics >> Summaries, tables & tests >> Tables

>> Table of summary statistics

collapse aggrega i dati producendo un nuovo dataset con solo gliindicatori calcolati sulle variabili specificateData >> Create or change variables >> Other

variable transformation commands >> Make dataset

of means...

inspect qualche ulteriore indicatore univariato sulla distribuzionedelle variabiliData >> Describe data >> Inspect variables

correlate produce correlazioni o matrici di varianze e covarianzeStatistics >> Summaries, tables & tests >> Summary

statistics >> Correlations and covariances

pcorr produce correlazioni parzialiStatistics >> Summaries, tables & tests >> Summary

statistics >> Partial correlations

spearman/ ktau correlazione dei ranghi di Spearman, il tau-b di KendallStatistics >> Summaries, tables & tests >>

Nonparamteric tests of hypothesis >> ... Spearman’s

rank correlation / ... Kendall’s rank correlation

count if exp calcola quante osservazioni soddisfano la condizione espressada expData >> Variable utilities >> Count observations

satisfying condition

7.2.4 help

comando STATA descrizionehelp help help interattivo sull’uso del sistema di help

help argomento help interattivo sull’argomento specificato

search stringa riporta descrizioni di comandi STATA relativi al termine spe-cificato nella stringa. Il risultato comprende anche articolidello STATA Technical Bulletin e programmi ottenibili dagliarchivi di STATA.

webseek stringa come search ma in internet

31

Page 32: Introduzione a STATA - stat.unipd.it...I comandi, gli operatori e le variabili di sistema saranno scritti con carattere tipografico; i nomi generici di file e variabili e in generale

Riferimenti Bibliografici

• Jeroen Weesie, (2000) Introduction to Stata

• STATA Press, (2005) User’s Guide, Release 9, StataCorp, College Station,Texas, USA.

• STATA Press, (2005) Getting Started with STATA for Windows, Release 9,StataCorp, College Station, Texas, USA.

• STATA Press, (2005) Graphics, Release 9, StataCorp, College Station, Te-xas, USA.

32