Sei sulla pagina 1di 32

Introduzione a

STATA
Silvia Sartorelli

Dipartimento di Scienze Statistiche


Università 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
5.3 Matrici di correlazione . . . . . . . . . . . . . . . . . . . . . . . . 22
5.4 Regressione lineare . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6 L’interfaccia grafica 24

7 Breve sommario di comandi 27


7.1 Operatori logici ed aritmetici . . . . . . . . . . . . . . . . . . . . . 27
7.2 Tabelle riassuntive . . . . . . . . . . . . . . . . . . . . . . . . . . 28
7.2.1 acquisizione e salvataggio di dataset . . . . . . . . . . . . . 28
7.2.2 manipolazione dei dati . . . . . . . . . . . . . . . . . . . . 29
7.2.3 procedure descrittive . . . . . . . . . . . . . . . . . . . . . 30
7.2.4 help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Prefazione
Lo scopo di questo quaderno è quello di avviare studenti e tesisti all’uso del
pacchetto statistico STATA.
Si tratta di un testo introduttivo che non pretende di sostituire manuali o altri
testi più articolati, ma nasce con lo scopo di mettere l’utente in grado di cogliere
le caratteristiche fondamentali del programma per proseguire autonomamente
l’approfondimento delle procedure che gli saranno necessarie per lo svolgimento
del proprio lavoro.
Spunto ed aiuto per il presente lavoro è stata l’analoga Introduction to Stata
di Jeroen Weesie dell’Università di Utrecht.
Ringrazio tutti quelli che mi hanno già aiutato e quelli che lo faranno in futuro
con 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 è libero di riprodurre, distribuire, comunicare al pubblico, esporre
in pubblico, rappresentare, eseguire e recitare quest’opera e di modificare quest’opera. Alle seguenti condizioni:
deve attribuire la paternità dell’opera nei modi indicati dall’autore o da chi ha dato l’opera in licenza; non
si può usare quest’opera per fini commerciali; se si altera o trasforma quest’opera, o se la si usa per crearne
un’altra, si può 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 va
comunicata con chiarezza. In ogni caso, si può concordare col titolare dei diritti d’autore utilizzi di quest’opera
non consentiti da questa licenza.
Nothing in this license impairs or restricts the author’s moral rights.

2
1 Struttura e sintassi
1.1 Introduzione
STATA è un moderno e ricco programma per un amplissimo panorama di analisi
statistiche, la creazione di grafici e la manipolazione di dati. Nasce per l’utilizzo a
linea comando ma le ultime versioni offrono anche la possibilità di eseguire un’a-
nalisi completa, dall’acquisizione dei dati all’esportazione dei risultati, attraverso
menù e finestre di dialogo.
In questa dispensa si descriveranno brevemente le principali funzioni via linea
comando, quindi si presenteranno anche le caratteristiche dell’interfaccia grafica.
La versione di riferimento è 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 andrà inserito dall’utente sarà scritto in italico.
Infine, le linee di comando negli esempi di sintassi saranno isolate dal testo e
precedute 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 singolo
comando oppure dalla finestra “Command” uno alla volta in ordine inverso con
PagUp e PagDown ) per essere mandati in esecuzione di nuovo.
Informazioni sulla sessione di lavoro, i risultati dei comandi, compresa la
segnalazione di eventuali errori, vengono visualizzati nella finestra denominata
“Results”.
Nella finestra “Variables” comparirà la lista delle variabili contenute nel
dataset attivo.

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


borazioni che richiedono troppo tempo) con la combinazione di tasti Ctrl + Break 2 .
1
Il punto non fa parte della sintassi ma è 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
Figura 1: Interfaccia di STATA all’avvio

Se invece si vuole semplicemente omettere la visualizzazione di un output, basta


premettere quietly al comando in questione.

Chiudere STATA Per chiudere una sessione di lavoro il comando è exit ma


STATA 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, il
comando è:

. exit, clear

Identificatori Un identificatore, ossia il nome di un comando o di una varia-


bile, può essere al massimo di 32 caratteri (caratteri, numeri e l’underscore) in
cui il primo elemento è preferibilmente un carattere. STATA è case-sensitive, os-
sia distingue tra maiuscole e minuscole (var1 è diverso da Var1). Quasi tutti i
comandi di STATA sono in minuscolo.

Abbreviazioni In generale, in STATA si possono usare abbreviazioni di coman-


di e variabili fintanto che non si creino ambiguità su ciò a cui ci si riferisce.

Log-files È possibile memorizzare tutti i comandi inviati ed il relativo output


in un file di testo esterno.

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

Dataset attivo In STATA si lavora con un dataset alla volta; quello attivo è
quello che viene esplicitamente caricato o acquisito e le cui variabili compaiono
nella finestra “Variables”. Se si deve lavorare con altri file è necessario prima
ripulire 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 della
finestra). Si può scegliere la propria working directory inserendone il percorso
completo nelle proprietà del collegamento con cui si lancia il programma, in mo-
do che si apra automaticamente dove si desidera e si può comunque modificarla
in 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 è:

. [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, exp
indica un’espressione algebrica, range indica un intervallo di osservazioni, weight
indica un’espressione per attribuire un peso alle osservazioni e options indica una
lista di opzioni.

varlist : la maggior parte dei comandi che accettano una lista di variabili non
necessitano che questa sia esplicitmante indicata. Se non appare alcuna
lista, tali comandi assumono che la lista sia all, che è un’abbreviazione per
indicare tutte le variabili del dataset caricato. Per i comandi che alterano o
distruggono dati, STATA richiede che la lista di variabili sia esplicitamente
indicata

by varlist: : questo prefisso fa in modo che STATA ripeta il comando specifi-


cato per ogni sottoinsieme individuato dalle modalità della/e variabile/i
indicata/e. I dati devono essere già ordinati secondo tale/i variabile/i

if exp : si restringe l’esecuzione di un comando a quelle osservazioni per le quali


il valore dell’espressione specificata è 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 osservazione
coinvolte

5
=exp : specifica il valore che deve venir assegnato ad una variabile ed è usata
principalmente con i comandi generate e replace
weight : indica il peso da assegnare a ciascuna osservazione. La sintassi è:
[weightword=exp], dove le parentesi quadre vanno scritte e con weightword
si intende uno dei possibili tipi di peso specificabili
options : molti comandi prevedono delle proprie specifiche opzioni, queste si
indicano 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’utilizzo
di STATA. I file di log mantengono traccia di ciò che si è richiesto ed i relativi
risultati durante una sessione di lavoro. I file do sono utili quando si devono
ripetere lunghe serie di comandi e/o si devono ripetere le stesse analisi su nuovi
o modificati dataset.
La sintassi per la creazione di un file di log è:

. log using nomedelfiledilog

dove con nomedelfiledilog si indica il nome che si è scelto per il file di log. È
utile scegliere nomi che rievochino il contenuto della sessione di lavoro memo-
rizzata; STATA vi associerà automaticamente l’estensione .smcl. Se si indica un
nome semplice questo verrà memorizzato nella working directory, se si desidera
salvarlo altrove, bisognerà indicare un nome completo di percorso, racchiuso tra
virgolette.
Di default verrà memorizzato in tale file tutto ciò che compare nella fi-
nestra dei risultati; se si desidera quindi ricordare solo alcune cose possiamo
interrompere e far riprendere la memorizzazione più tardi:

. log close

per poi riaprirlo e aggiungere informazioni o rimpiazzarle.

. log using nomedelfiledilog, append


. log using nomedelfiledilog, replace

C’è la possibilità di inserire commenti semplicemente facendo precedere qualsiasi


cosa si scriva nella finestra “Command” dal segno *.
Quello che invece viene chiamato un do-file è un insieme di comandi nella
forma e nell’ordine che si sarebbero usati in una sessione di lavoro, memorizzato
in righe successive di un file di testo. Qualsiasi comando di STATA può far parte
di un do-file.
Trattandosi di un normale file di testo può essere scritto con un qualsiasi
editor, l’importante è che venga memorizzato con un comando per riga, in quanto

6
il tasto di Invio per STATA ha il significato di mandare in esecuzione il comando
in oggetto. Se i comandi sono troppo lunghi e devono stare su più righe si può
momentaneamente sostituire il delimitatore tra i comandi con un carattere a
nostra scelta che va dichiarato prima di essere utilizzato; nel seguente esempio si
immagina 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 è valido solo nei do-file e che i punti non
fanno parte della sintassi.

7
2 Acquisizione dei dati
Ci sono tre comandi fondamentali per l’acquisizione di dati in STATA.

use : è per il caricamento di dati che sono già in formato STATA

insheet : è per fogli elettronici salvati come .csv o tab-delimited da programmi


come excel

infile : è per i dati grezzi, detti in formato piatto, memorizzati in ASCII ma


né .csv né tab-delimited

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

. use ‘‘nomecompletodelfile.dta”

Attenzione che è necessario utilizzare le virgolette e non singoli apici. Se invece il


file si trova nella working directory allora è sufficiente richiamarlo col suo nome,
senza estensione e senza usare le virgolette.

2.2 insheet
Il comando insheet è molto utile per leggere dati salvati come .csv o tab-
delimited da un foglio elettronico, ossia quando il delimitatore tra i campi è una
virgola o una tabulazione. È necessario, però, rispettare alcuni accorgimenti:

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

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

• virgole nei numeri o nelle stringhe possono creare problemi perché STATA li
confonde con delimitatori dei valori, oppure variabili numeriche possono
essere considerate di tipo carattere; bisogna risolvere questo problema nel
foglio elettronico, prima di procedere al salvataggio

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

8
• il delimitatore tra i campi deve essere una virgola o una tabulazione e non
lo spazio; da excel è possibile salvare i file con estensione .csv e scegliere
un delimitatore diverso (p.e. il punto e virgola), in questi casi insheet
non funzionerà correttamente a meno di non usare l’opzione delimiter e
indicare il carattere che effettivamente separa i campi

• non devono esserci celle vuote alla fine delle righe perché potrebbe essere
memorizzato un numero sbagliato di valori

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

. insheet using ‘‘nomecompletodelfile’’

Se il delimitatore è diverso da tabulazione e virgola, ed è, ad esempio, un punto


e virgola bisogna aggiungere l’opportuna opzione:

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

2.3 infile
Con questo comando si acquisiscono dati memorizzati in file ASCII che soddisfano
le 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 interno
devono essere racchiusi tra virgolette

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


e percentuale

• il comando suppone che i campi siano separati da spazi e che i dati mancanti
siano 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 è:

. infile varlist using ‘‘nomecompletodelfile’’

dove con varlist si intende l’elenco delle variabili con i nomi che saranno utilizzati
all’interno di STATA. Se una variabile è di tipo carattere bisogna far precedere il
nome della variabile con str#, dove # è un numero che indica la dimensione della
variabile carattere.
Si utilizza infile anche quando le osservazioni sono memorizzate su più
righe o, in via più generale, quando abbiamo bisogno di acquisire dati che sono

9
stati memorizzati in formati particolari ma allora è più facile, se non addirittura
necessario, usare un dictionary file.
Sostanzialmente un dictionary file è un file di testo con estensione .dct che
contiene tutte le informazioni necessarie e le precise specificazioni su quale sia
il file da acquisire, come sono collocate le variabili (tracciato record) e come
andranno chiamate. La sintassi è3 :

. infile using ‘‘dictionary-file’’

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

. infix specifiche using ‘‘nomecompletodelfile’’

2.5 save
Una volta acquisiti ed eventualmente modificati i dati è probabile che si desideri
salvarli e nel formato di STATA, in modo da averli prontamente disponibili in
sessioni di lavoro successive. La sintassi per salvare i dati in formato STATA è:

. save “nomecompletodelfile.dta”, replace

L’opzione replace è necessaria per aggiornare (e sovrascrivere) una eventuale


copia già esistente del file di dati in questione.
Anche in questo caso, se si desidera salvare nella working directory sarà
sufficiente 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 può abbreviare semplicemente con la lettera d, fornisce tutte le informazioni


basilari che riguardano il file e le variabili in esso contenute.
Se si desidera conoscere le caratteristiche di un file che si è già memorizzato
in formato .dta, ma non caricato, cosa che può essere utile nel caso si abbia a
che fare con file molto grandi, allora la sintassi è:
3
Si rimanda al manuale per ulteriori dettagli

10
. describe using ‘‘nomecompletodelfile.dta’’

Nel caso si abbia bisogno di una maggiore quantità di memoria rispetto a


quella allocata di default, è possibile modificarne i parametri per la corrente
sessione 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 è:

. set memory 12 m

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 è:

. list varlist

in cui, omettendo varlist, si ottiene la lista dell’intero dataset.


Infine un comando molto utile è:

. edit

Con tale comando viene evocata una finestra grafica simile ad un foglio elet-
tronico che conterrà i dati del dataset attivo. Le colonne rappresentano le va-
riabili e le righe le unità statistiche. Ci si può spostare tra le celle utilizzando il
mouse o le frecce. Si possono passare dati da un foglio elettronico all’altro con
le comuni funzionalità di selezione, copia ed incolla. Vi si possono immmettere e
modificare dati. È possibile modificare le caratteristiche delle variabili evocando,
con un doppio clic sulla colonna corrispondente, la finestra di dialogo “Variable
Proprieties”.
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 si
avvia l’editor. Questa funzione recupera la copia di backup se si desidera
cancellare 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 la
variabile selezionata, l’osservazione selezionata o tutte le osservazioni che
presentano lo stesso valore di quell’osservazione per la variabile selezionata

11
3 Manipolazione dei dati
STATA può memorizzare i dati in formato carattere o numerico e permette di
compiere la maggior parte delle analisi solo sulle variabili numeriche. Può suc-
cedere che acquisendo i dati con insheet o infile una variabile venga letta
come carattere o stringa seppure sia un numero, per esempio se ci sono spazi
o punti dove non dovrebbero essercene. Per utilizzarle nelle analisi è necessario
riconvertirle in numeriche.
In generale, comunque, è frequente che le variabili non siano già nel forma-
to più utile all’analisi e che quindi si renda necessario qualche manipolazione,
aggiustamento o ricodifica. Per avere uno schema sintetico della natura e della
distribuzione di una variabile, è utile il comando:

. codebook listavariabili

3.1 encode e decode


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

. encode gender, generate(sex)

L’opzione generate(nuovavar1) è necessaria.


Il comando decode, al contrario, crea una nuova variabile di tipo carattere
(nuovavar2) basata sulla variabile numerica nomevar e sulle etichette attribuite
ai suoi valori.

. decode nomevar, generate(nuovavar2)

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

. generate nuovavar=exp

dove con exp si intende un’espressione algebrica che può essere combinazione di
variabili esistenti, operatori e funzioni. Se si vuole sostituire completamente una
variabile esistente il comando è:

12
. replace vecchiavar=exp

Si noti che:

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

• le espressioni di trasformazione possono essere molto complesse, basta che


siano combinazioni di variabili esistenti e di funzioni e operatori validi

• il calcolo che comprenda un dato mancante porta ad ottenere un dato


mancante, come pure la divisione per 0

• se vengono generati dati mancanti allora questa evenienza sarà riportata


nell’output; la mancanza di tale informazione implica che non sono stati
generati 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 sarà quella della
stringa assegnata

• generate può essere abbreviato ma non replace, questo perché STATA cer-
ca di evitare che i dati esistenti vengano alterati accidentalmente

Spesso i nuovi valori che una variabile assume dipendono dai valori di altre
variabili; per condizionare l’assegnazione dei nuovi valori a quelli delle variabili
esistenti si usa il comando if; la sintassi sarà la seguente:

. generate nuovavar = exp if condizione

dove la condizione è un’espressione che deve essere verificata perché l’assegnazio-


ne vada a buon fine.
Le espressioni di condizionamento possono essere molto complicate, valgono
gli operatori logici e if può essere usato in combinazione con in4 .
In STATA è particolarmente agevole la creazione di variabili dummy:

. tab variabile1, gen(vardummy)

con questa sintassi verranno create tante variabili dummy quanti sono i livelli
della variabile1 e i nomi saranno vardummy1, vardummy2, etc.
Se si è interessati a creare un’unica dummy che assuma valore 1 per un
determinato livello e 0 per tutti gli altri allora la sintassi è diversa:

. gen nuovadummy = (vecchiavar==livellodiinteresse)


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

13
3.3 recode
Quando si ha necessità di ricodificare una variabile il comando è recode; la
sintassi è:

. recode nomevar regola1 [regola2] ...

dove con regola1, etc si intende il criterio di ricodifica dei valori. Ad esempio
si 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 otterrà 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 restanti
valori con il numero 3. Si noti che il range poteva anche essere scritto utilizzando
la barra (p.e. 1/3 che in STATA significa “da 1 a 3”) e min e max per indicare gli
estremi degli intervalli.
Se non si intende perdere i valori della variabile originaria e memorizzare
il risultato della ricodifica in una nuova variabile bisogna utilizzare l’opzione
generate(newvar). Si supponga di avere una variabile (punteggio) che assume
i 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 sono
memorizzate le variabili originali. Nel caso si abbiano variabili separate per
giorno, mese e anno allora si può usare la funzione mdy() per creare la variabile
data (nel senso di tempo trascorso dal 1◦ gennaio 1960); giorno, mese e anno
devono essere numeriche e la sintassi è:

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

naturalmente i nomi delle variabili che contengono le informazioni su giorno,


mese e anno non sono importanti mentre è fondamentale l’ordine in cui vanno
richiamate nella funzione; attenzione inoltre che l’anno deve essere memorizzato
con 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 tipo
stringa di nome vecchiadata e di volere la corrispondente come tempo trascorso
dal 1◦ gennaio 1960; la sintassi è:

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

dove ‘‘mdy’’ indica il formato per leggere correttamente la data, quindi va


rispettato l’ordine in cui giorno (d), mese (m) e anno (y) si presentano nella
variabile originale e le virgolette fanno parte della sintassi.
Infine si può usare il comando format per far visualizzare come date di
calendario le date memorizzate come tempo trascorso dal 1◦ gennaio 1960:

. format variabiledata %formato

un esempio di formato di data è %d, per cui la data 31 agosto 1976, che corri-
sponde al valore in una variabile di tipo data “6087” viene poi visualizzata come
31aug1976. Per tutti gli altri formati possibili si veda il manuale.
Per lavorare con le date STATA propone anche altre utili funzioni; quindi
avendo 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 fini
della 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 può
contenere quanti elementi si desidera; è chiaro che il risultato sarà lo stesso e si
sceglierà un comando o l’altro a seconda della comodità del momento. Si faccia
attenzione, però, perché le variabili eliminate in questo modo non potranno essere
recuperate a meno di ripulire il buffer di lavoro e ricaricare il dataset senza averlo
sovrascritto.
Questi stessi comandi possono essere utilizzati anche per la cancellazione di
osservazioni:

. drop if condizione

15
e analogamente

. keep if condizione

Verranno tenute (o eliminate) le osservazioni per le quali è vera la condizione


specificata.
Quando invece si desidera rinominare una variabile esistente il comando è:

. rename nomevecchio nomenuovo

e si può rinominare una sola variabile alla volta.

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

. sort variabile

Si può ordinare il dataset secondo più variabili nidificate. Se si pensa di aver


bisogno di tornare all’ordine originario, è buona norma creare una variabile di
tipo 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. I
casi sono due:

1. si desidera aggiungere nuove osservazioni, su cui sono state rilevate le stesse


variabili del dataset attivo

2. si desidera aggiungere informazioni (quindi nuove variabili), rilevate sulle


stesse osservazioni già caricate

Si sta parlando comunque di dati che sono già stati precedentemente acquisiti in
STATA e salvati in formato .dta.
Nel primo caso si usa il comando append. Si supponga di avere caricato un
file di dati e di voler aggiungere delle nuove osservazioni:

. append using ‘‘nomefiledaaggiungere’’

16
le informazioni contenute nel nuovo dataset saranno memorizzate alla fine del
dataset già caricato. Qualsiasi variabile con nome differente nei due dataset
presenterà 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 è merge. Se non utilizziamo alcuna chiave per far corrispondere
le osservazioni del primo (quello caricato in memoria, detto “master dataset”)
con quelle del secondo (detto “using dataset”), merge compirà un semplice ac-
coppiamento riga per riga ma questo non ci garantisce che le informazioni di un
dataset si riferiscano esattamente alla stessa osservazione dell’altro. Per poter
utilizzare una chiave è necessario che questa esista o si possa creare sulla base
delle informazioni esistenti e che sia presente e dello stesso formato in entrambi
i dataset. Prima di procedere, inoltre, è necessario controllare che magari non
siano stati utilizzati gli stessi nomi di variabili per informazioni che invece sono
addizionali, in tal caso, infatti, STATA preseverà quelle del dataset caricato e non
aggiungerà quelle del nuovo; bisognerà quindi rinominare le variabili prima di
compiere l’unione.
In generale la sintassi per compiere l’unione di due dataset è:

. use primofile
. sort variabilechiave
. merge variabilechiave using secondofile

dove il secondo file deve essere già memorizzato e ordinato secondo la stessa
chiave.
STATA creerà automaticamente una variabile chiamata merge che indicherà
il risultato dell’unione osservazione per osservazione; di seguito il significato dei
valori 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 mancanti


del primo dataset sono stati sostituiti da valori validi trovati nel secondo

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

Le modalità 4 e 5 possono presentarsi solo nel caso si sia utilizzata l’opzione


update, tramite la quale si aggiornano i dati mancanti del “master dataset” con
quelli provenienti dall’“using dataset”.

17
4 I grafici
STATA consente di creare numerosi tipi di grafici; offre una grande flessibilità non
solo per l’impaginazione dei grafici ma soprattutto per il loro contenuto. Integra
nei grafici le curve di aggiustamento e di lissage, gli intervalli di confidenza e tutti
gli altri elementi grafici associati ai dati. Si possono modificare i titoli, i colori
o i simboli in tutta semplicità grazie alle finestre di dialogo. Infine, è possibile
esportare i risultati in formati diversi compresi PostScript e PNG.
Di seguito si cercherà di focalizzare l’attenzione su alcuni aspetti fonda-
mentali mentre si lascia all’utente l’esplorazione nella vasta scelta di opzioni
e caratterizzazioni.
I grafici sono memorizzati nella memoria centrale o sul disco fisso. Quando
si disegna un grafico questo verrà conservato in memoria centrale con il nome
Graph e verrà sostituito dal comando graph successivo.
STATA permette però di avere più finestre grafiche contemporaneamente; l’op-
zione name() crea un grafico dotato di un proprio nome e presentato in una
propria finestra.

. graph twoway scatter nomevar1 nomevar2, name(nomegrafico1)

Se non è salvato esplicitamente, qualsiasi grafico sarà cancellato alla chiusura


della sessione di lavoro ed è cancellato anche nel caso si usino i comandi clear
o discard.
È possibile salvare i propri grafici su disco fisso in vari modi. Si può salvare
il 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 può 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 soggetto
a successive sovrascrizioni.
STATA offre comandi per gestire i grafici, sia quelli in memoria centrale che
memorizzati su disco:
graph dir fornisce l’elenco dei grafici conservati sia in memoria che su disco
(nella working directory)

18
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 in


memoria centrale o su disco
Tutti i comandi appena descritti sono accessibili anche via menù e finestre di
dialogo: Graphics >> Manage Graphs >> ...
Tutti i comandi riguardanti i grafici iniziano con la parola graph, ma in molti
casi la parola graph è opzionale. Ad esempio il comando:

. graph twoway scatter nomevar1 nomevar2

che crea un grafico di dispersione tra due variabili, può essere ottenuto omet-
tendo graph ed addirittura omettendo twoway.
Ci sono diversi tipi (“famiglie”) di grafici, ciascuno dei quali prevede poi
ulteriori 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 più semplice per esportare un grafico da STATA ad un’altra applicazio-
ne è via clipboard. Dopo la creazione del grafico si deve selezionare la finestra
grafica, quindi si evoca il menù con il tasto destro del mouse e si seleziona la
voce “Copy”. STATA farà una copia del file come Enhanced Metafile (EMF);
questo assicura che l’applicazione che riceverà il grafico l’avrà con la risoluzione
più alta possibile. Se l’applicazione destinataria non è in grado di interpretare
tale 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 può passare all’applicazione in
cui si vuole importarlo e dove lo si può “Incollare”.

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

20
5 Alcuni comandi di base
Supponiamo che finalmente si siano acquisiti correttamente i dati e che questi
siano nella forma a noi più utile e quindi si possa iniziare con le analisi vere e
proprie.

5.1 Indicatori univariati


Con il comando summarize si ottengono i principali indicatori univariati delle
variabili 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, è probabile
che 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 variabili
indicate.

. summarize varlist, detail

5.2 Tabelle
Il comando tabulate produce tabelle di frequenze semplici. Per ciascuna moda-
lità della variabile indicata, STATA presenterà nella finestra di output la frequenza
assoluta e le percentuali semplici e cumulate. Specificando due variabili si otterrà
una tabella di contingenza a doppia entrata. Sono utilizzabili inoltre numerose
opzioni 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 vuole
la tabella.
Se invece si desiderano tutte le combinazioni di tabelle a doppia entrata di
una lista di variabili il comando è:

. tab2 varlist

Infine può succedere che si desideri uno schema sintetico di indicatori uni-
variati relativi ad una o più variabili di classificazione; il comando è table con
l’opzione contents in cui si elencano gli indicatori desiderati e la/le variabile/i
su cui si vogliono calcolare:

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

21
5.3 Matrici di correlazione
Il comando correlate produce la matrice di correlazione o la matrice di varianze
e covarianze per la lista di variabili specificate oppure per i coefficienti risultati
dalla più recente procedura di stima. Se non si specifica l’argomento allora
STATA utilizzerà tutte le variabili numeriche del dataset.

. correlate varlist

Il comando correlate esclude dal calcolo tutte le osservazioni per le quali


c’è almeno un dato mancante nelle variabili indicate (esclusione listwise). In
alternativa c’è il comando pwcorr che calcola i coefficienti di correlazione con
tutti i dati validi coppia per coppia (esclusione pairwise). Quest’ultimo comando
riporta di volta in volta il numero di osservazioni su cui il coefficiente è stato
calcolato e, su richiesta, anche la significatività e altre opzioni:

. pwcorr varlist, sig

5.4 Regressione lineare


Il comando per ottenere un’analisi di regressione lineare è regress e la sua
sintassi base è5 :

. regress vardipendente listadivarindipendenti, opzioni

Tra le opzioni ci sono: la possibilità di sopprimere il termine costante (nocostant),


di ottenere i coefficienti standardizzati (beta), di cambiare il livello degli intervalli
di confidenza (level(#)) etc.
Per verificare che le variabili coinvolte e/o gli errori abbiano una distribuzione
normale si possono usare vari strumenti grafici di diagnostica, ad esempio i grafici
ottenuti con il comando histogram e la sua opzione normal, che sovrappone una
curva 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
5
Si ricorda che questa è una dispensa di introduzione: in STATA esiste una lunga lista di
comandi 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 per
gli approfondimenti si rimanda al manuale.

22
Per verificare la forma della relazione tra le variabili coinvolte si può usare il
comando 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, con
il comando ladder si ottiene uno schema con le trasformate più comuni (cubo,
quadrato, logaritmo naturale, radice quadrata e le rispettive funzioni recipro-
che) e il risultato di un test di normalità. Con gladder e qladder si possono
visualizzare i relativi istogrammi e diagrammi quantile-normale.
Una volta perfezionata l’analisi con il comando predict si possono salvare i
valori predetti, i residui, le statistiche di influenza. Le opzioni di predict dipen-
dono in parte dagli strumenti di stima che sono stati precedentmente utilizzati e
quindi vanno verificati volta per volta. La sintassi è:

. predict nuovavar, contenutodinuovavar

Il comando crea una variabile alla volta. Se non si specifica nulla creerà una
variabile che contiene i valori predetti sulla base dell’ultimo modello stimato
altrimenti salverà quello che viene specificato, come, ad esempio, i residui:

. predict varresidui, residual

23
6 L’interfaccia grafica
STATA nasce come applicativo a linea-comando ma attualmente offre la possi-
bilità 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 più noti programmi Windows non avrà difficoltà ad orientar-
si tra i menù e le finestre di dialogo. In particolare le voci del menù Data,
Graphics e Statistics permettono di accedere a quasi qualsiasi comando di
STATA semplicemente cliccando le voci di interesse.
La barra dei menù 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’importazione
e l’esportazione di file di dati, la stampa della finestra
dei risultati
Edit propone le voci per le consuete funzioni di editor, come
copia-incolla
Prefs propone voci per la gestione e la memorizzazione di
impostazioni 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 di
possibili grafici
Statistics propone le voci per una ricchissima scelta di analisi
statistiche
User raccoglie menù e sottomenù creati secondo le scelte
dell’utente
Window raccoglie le voci per la gestione delle finestre
Help raccoglie le voci per evocare i vari file di help

La barra degli strumenti (figura 2) propone le icone per un rapido accesso


alle funzioni usate più comunemente. Alcuni bottoni presentano sia un’icona che
una freccetta: cliccando sull’icona si invia il comando relativo, cliccando sulla
freccetta viene proposto un menù.

Figura 2: La barra degli strumenti

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

24
1 Open apre un dataset in formato STATA (.dta); cliccando sul-
la freccetta propone un elenco di dataset recentemente
usati
2 Save salva il dataset correntemente in memoria
3 Print stampa il contenuto delle finestre “Results”, “Viewer”
o “Graph”. Cliccando sull’icona viene scelto “Results”
mentre cliccando sulla freccetta viene proposto l’elenco
delle finestre tra cui scegliere
4 Log Begin inizia un nuovo file di log, aggiunge ad un file di log
esistente o chiude o sospende il log corrente7
5 Viewer apre il Viewer oppure porta il Viewer davanti alle fine-
stre. Il Viewer è una finestra in cui si possono vede-
re informazioni d’aiuto, visualizzare e stampare file di
log 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 ed
installare gli aggiornamenti ufficiali di STATA
6 Results porta la finestra dei risultati davanti alle altre finestre
7 Graph porta la finestra dei grafici davanti alle altre finestre.
Cliccando sulla freccetta si sceglie quale tra le finestre
grafiche
8 Do-file editor apre un file di do oppure porta l’editor di do-file
davanti alle altre finestre
9 Data Editor apre l’editor dei dati opppure lo porta davanti alle altre
finestre
10 Data Browser apre il visualizzatore dei dati o lo porta davanti alle altre
finestre
11 Clear comanda a STATA di continuare quando si è mo-
mentaneamente fermato nel mezzo di un lungo
output
12 Break interrompe il processo corrente

La maggior parte delle finestre di dialogo propone gli stessi cinque tasti
presenti 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 dalla


compilazione dei campi in tale finestra

Submit manda in esecuzione il comando come OK, ma lascia la finestra di dialogo


aperta in modo che si possano effettuare cambiamenti e inoltrare ulteriori
richieste
7
Si veda il capitolo 1 per una breve spiegazione di che cos’è un file di log

25
Il comando scelto nella finestra di dialogo è mandato in esecuzione esatta-
mente come se fosse stato digitato in “Command”, comparirà nella finestra di
“Review” e sarà da qui accessibile per usi futuri.
Il bottone nell’angolo in basso a sinistra con il punto di domanda permette
di accedere al sistema di “help” di STATA. Scegliendolo evocherà il file di “help”
del comando associato alla finestra di dialogo in questione.
Il bottone con la lettera R è il bottone di “reset”. Ogni volta che si apre una
finestra di dialogo questa riporterà gli ultimi parametri che sono stati inseriti
quindi R si userà quando si desidera ripulire i campi dai valori memorizzati in
precedenza.
I comandi di STATA sono evocati non solo dai menù ma anche attraverso altri
due metodi. Se si ricorda il nome del comando di cui si vuole la finestra di dialogo
si può usare il seguente comando:

. db nomedelcomando

e si aprirà la finestra di dialogo del comando specificato dopo db.


Oppure si può accedere alla finestra di dialogo di un comando dal relativo file
di help.
Le finestre di dialogo di molti comandi prevedono anche la possibilità di
compiere delle selezioni tra le unità tramite l’aletta bt/if/in e/o di applicare
un sistema di pesi alle unità coinvolte nell’analisi tramite l’aletta Weights.
STATA propone centinaia di finestre di dialogo e non è intenzione di questa
dispensa offrirne una panoramica completa. Si lascia all’utente la ricerca della/e
funzione/i di interesse tramite l’help ma nel sommario (capitolo 7) troverà alcuni
schemi con i comandi più usati ed il percorso per evocarne la finestra di dialogo
corrispondente.

26
7 Breve sommario di comandi
In questo capitolo si darà una breve spiegazione dei più importanti ed usuali
comandi 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 usa
il 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 totale


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

• il punto (.) rappresenta il valore mancante di sistema; nel sistema inoltre


i valori mancanti sono considerati come i valori più grandi possibile per il
tipo di dato in oggetto
Le più importanti tra le funzioni matematiche utilizzabili sono:
abs() il valore assoluto

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

exp() la funzione esponenziale e()

int() l’intero ottenuto dal troncamento

round(x, y) arrotonda x in unità di y (round(.,1) arrotonda al più vicino


intero)

log() il logaritmo naturale

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

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

27
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 è richiesto


ma le parentesi non possono essere omesse. Il seme può essere modificato
con 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 descrizione
della funzionalità e il percorso da fare tra i menù per arrivare alla corrispondente
finestra di dialogo8

7.2.1 acquisizione e salvataggio di dataset

comando STATA descrizione


use 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 esistente
insheet using filename acquisisce un dataset ASCII in cui i campi sono
separati da virgole o tabulazioni
File >> Import >> ASCII data created by a
spreadsheet
infile varlist using filename acquisisce un dataset ASCII in cui i campi sono
separati da spazi
File >> Import >> Unformatted ASCII data
infix varlist using filename acquisisce un dataset ASCII in cui i campi sono in
formato fisso
File >> Import >> ASCII data in fixed
format
outfile using filename crea un datset ASCII in cui i campi sono separati
da spazi
File >> Export >> ASCII text
outsheet using filename crea un datset ASCII in cui i campi sono separati
da virgole o tabulazioni
File >> Export >> Comma or tab-separated
data
8
Si ricorda comunque che, conoscendo il nome del comando, è possibile inserire nella finestra
“Command”: db nomecomando per evocare direttamente la corrispondente finestra di dialogo

28
7.2.2 manipolazione dei dati

comando STATA descrizione


merge using aggiunge variabili provenienti da un secondo dataset al
dataset attivo
Data >> Combine datasets >> Merge two datasets
merge chiave using aggiunge variabili provenienti da un secondo dataset al
dataset attivo usando chiave come chiave
Data >> Combine datasets >> Merge two datasets
append aggiunge osservazioni da un secondo dataset al dataset
attivo
Data >> Combine datasets >> Append datasets
compress cerca di ridurre lo spazio di memoria occupato dal
formato delle variabili
Data >> Variable utilities >> Optimize
variable storage
expand= exp riproduce ciascuna osservazione per il numero di vol-
te richieste da exp; può risultare utile in analisi di
sopravvivenza
generate newvar= crea la variabile newvar
Data >> 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 dati


Data >> Data Editor / Data >> Data Browser

egen estensione di generate


Data >> Create or change variables >> create
new variable (extended)
recode nomevar ricodifica i valori di nomevar
Data >> Create or change variables >> Other
variable transformation commands >> Recode
categorical variable
encode nomevar, gen(new) crea una nuova variabile di tipo numerico con valori
associati alle originali stringhe
Data >> 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 delle
etichette di una originale variabile numerica
Data >> Create or change variables >> Other
variable transformation commands >> Decode
string from labeled numeric variable

29
sort mette le osservazioni in ordine crescente secondo una o
più variabili; i dati mancanti vengono collocati in fondo
Data >> Sort >> Ascending sort
rename nomeold nomenew cambia il nome di una variabile
Data >> Variable utilities >> Rename variable
drop varlist elimina le variabili specificate nella lista
Data >> Variable utilities >> Keep or drop
variables
drop if condizione elimina le osservazioni per le quali la condizione
specificata è vera
Data >> Variable utilities >> Keep or drop
observations
keep varlist mantiene solo le variabili specificate nella lista
Data >> Variable utilities >> Keep or drop
variables
keep if condizione mantiene solo le osservazioni per le quali la condizione
specificata è vera
Data >> Variable utilities >> Keep or drop
observations
sample # estrae un campione casuale dal dataset della dimensione
percentuale specificata dal numero indicato
Statistics >> Resampling >>Draw random sample

7.2.3 procedure descrittive

comando STATA descrizione


describe 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 attivo


Data >> Describe data >> List data
summarize produce indicatori univariati delle variabili numeriche
Data >> Describe data >> Summary statistics
summ, detail produce indicatori univariati delle variabili numeriche con
informazioni aggiuntive (quantili, curtosi, simmetria, etc)
Data >> Describe data >> Summary statistics
by... :summ produce indicatori univariati per sottogruppi
Data >> Describe data >> Summary statistics
tabulate produce tabelle di frequenze semplici e tabelle di contingenza
a doppia entrata

30
Statistics >> Summaries, tables & tests >> Tables
>>... One Way tables oppure ...Two-way tables with
measures of association
table produce tabelle a più entrate di indicatori univariati (con una
migliore formattazione)
Statistics >> Summaries, tables & tests >> Tables
>> Table of summary statistics
collapse aggrega i dati producendo un nuovo dataset con solo gli
indicatori calcolati sulle variabili specificate
Data >> Create or change variables >> Other
variable transformation commands >> Make dataset
of means...
inspect qualche ulteriore indicatore univariato sulla distribuzione
delle variabili
Data >> Describe data >> Inspect variables
correlate produce correlazioni o matrici di varianze e covarianze
Statistics >> Summaries, tables & tests >> Summary
statistics >> Correlations and covariances
pcorr produce correlazioni parziali
Statistics >> Summaries, tables & tests >> Summary
statistics >> Partial correlations
spearman/ ktau correlazione dei ranghi di Spearman, il tau-b di Kendall
Statistics >> Summaries, tables & tests >>
Nonparamteric tests of hypothesis >> ... Spearman’s
rank correlation / ... Kendall’s rank correlation
count if exp calcola quante osservazioni soddisfano la condizione espressa
da exp
Data >> Variable utilities >> Count observations
satisfying condition

7.2.4 help

comando STATA descrizione


help 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 articoli
dello STATA Technical Bulletin e programmi ottenibili dagli
archivi di STATA.

webseek stringa come search ma in internet

31
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

Potrebbero piacerti anche