Travailler avec STATA et une seule base de données - World ...

40
Atelier sur l’évaluation de l’impact sanitaire des financements basés sur les résultats Tunis, Tunisie Octobre 2010 Utilisation de Stata : Notions de base Session 1 Travailler avec STATA et une seule base de données

Transcript of Travailler avec STATA et une seule base de données - World ...

Atelier sur l’évaluation de l’impact

sanitaire des financements basés sur

les résultats

Tunis, Tunisie

Octobre 2010

Utilisation de Stata : Notions de base

Session 1

Travailler avec STATA et une seule base de données

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l‟aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Remarque

Sous STATA, il existe plusieurs manières d‟exécuter une tâche. Ne vous inquiétez pas si vous constatez qu‟une méthode différente est utilisée.

Vous trouverez des informations supplémentaires dans votre manuel intitulé « Getting started withSTATA »

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l‟aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Pour commencer :

Démarrer STATA

Option 1 :

Démarrer Tous les programmes Stata

Option 2 :

Double-cliquer sur l‟icône de STATA présent sur votre

poste de travail

Pour commencer :

Les fenêtres de STATA

La fenêtre Variables

Affiche la liste des variables que la base de données contient

La fenêtre Command

Où on saisit les commandes à exécuter sous STATA pour obtenir un résultat

La fenêtre Review

Affiche toutes les commandes déjà exécutées

Permet de réutiliser une commande en cliquant simplement dessus

La fenêtre Results

Où s‟affichent tous les résultats des commandes exécutées

Pour commencer :Ouvrir une base de données STATA

Première étape : Définir la taille de la mémoire

Utiliser la commande : set mem #m (remplacer # par la taille désirée)

set mem 100m / 200m

Deuxième étape :Vider la mémoire vive avant d‟ouvrir une nouvelle base de données

Utiliser la commande : clear

Troisième étape : Indiquer au logiciel le dossier dans lequel se trouve votre fichier de données enregistré au format STATA (dans ce cas, il s‟agit du fichier « session1.dta »)

Choisir l‟une des options suivantes :

Option 1: Fichier Ouvrir Rechercher le dossier et le fichier de données que vous voulez ouvrir

Option 2 : Commande use « emplacementdufichier\nomdufichier.dta » préciser le répertoire

Option 3 (2 étapes)

gl data = « emplacementdufichier » Remplacer par le chemin d‟accès approprié

Use « $data\session1.dta »

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l’aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Obtenir de l’aide :

Deux scénarios

Scénario 1

Vous connaissez la commande dont vous avez besoin mais vous

ne savez pas comment l‟utiliser

Commande : help suivi de la commande

Scénario 2

Vous savez ce que vous avez à faire mais vous ne connaissez pas

quelle commande utiliser

Aide recherche saisir ensuite le mot clé

Ou bien, Commande : Search suivi du mot clé

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l‟aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Les fichiers Do :

Utiliser un fichier Do

Conserve dans un document au format texte une trace de toutes les commandes exécutées Permet d‟exécuter toutes les commandes en une seule fois

Pas besoin de reprendre le travail il est possible de recréer la base de données en exécutant un fichier Do

Facile de corriger les erreurs détectées ultérieurement

Créer / éditer un fichier Do Créer un nouveau fichier Do : cliquer sur l‟icône « new do-file

editor » ou saisir la commande doedit

Éditer un fichier Do : doedit NOMDUFICHIERDO.do

Enregistrer un fichier Do : contrôle + s ou, lorsque le fichier Do en question est affiché, Fichier Enregistrer

Exécuter un fichier Do do NOMDUFICHIERDO.do

Les fichier Do :Astuces pour créer de bons fichiers Do

Soyez organisé ! Titrer les différentes sections du fichier Do

Inclure des observations et des notes à votre intention

Toutes les lignes des fichiers Do qui ne sont pas des lignes de commande doivent commencer par « * »

Au début de chaque fichier Do, inclure les éléments suivants set mem #m (taille de la mémoire)

Titres

Pour décrire l‟objet du fichier Do, indiquer la date et identifier l‟auteur, etc.

Emplacement du fichier

Si l‟emplacement du fichier change, on n‟a besoin de le changer qu‟une seule fois au début du fichier Do Commande : cd EMPLACEMENTDUFICHIER

cd « C:\Documents and Settings\Desktop\STATA workshop »

Les fichiers Do :

La commande #delimit

La commande #delimit permet de rétablir le caractère qui marque la fin d’une ligne de commande Commencer le fichier Do par la commande #delimit;

La fin d‟une ligne de commande est marquée par le point-virgule

Pourquoi ? Permet d‟écrire une commande sur plus d‟une ligne

Facilite la lecture du fichier Do

Permet d‟ouvrir plus facilement le fichier Do à partir d‟autres programmes (Word, etc.)

Ne pas oublier d’inclure le point-virgule après chaque commande dans un fichier Do !

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l‟aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Les fichiers Log :

Avoir un fichier Log

Les fichiers Do par opposition aux fichiers Log

Les fichiers Do = Conservent l‟historique de toutes les commandes exécutées

Les fichiers Log = Récapitulent les opérations effectuées pendant votre session Stata

Enregistrent tous les résultats affichés selon la commande exécutée

Enregistrent toutes les analyses statistiques effectuées

Créer un nouveau fichier Log :

log using NOMDUFICHIERLOG.txt

Remplacer un fichier Log :

log using NOMDUFICHIERLOG.txt, replace

Ajouter un fichier Log :

log using NOMDUFICHIERLOG.txt, append

Fermer un fichier Log pour le sauvegarder :

log close

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l‟aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Explorer les données :

Parcourir et éditer les données

La commande browse Permet d‟ouvrir une matrice de données réelles

La colonne contient la variable

La rangée contient l‟observation

Le contenu de la cellule d‟une variable correspondant à une observation particulière = valeur

Lorsqu‟une cellule ne contient aucune information = valeur manquante

Pour afficher certaines variables seulement : browse a1_11a a1_12

Pour afficher certaines observations seulement : browse if a1_12==2

Pour n‟afficher que certaines observations correspondant à certaines variables seulement : browse a1_11a if a1_11a<30

La commande edit Permet d‟ouvrir une matrice de données réelles

Permet de modifier une valeur quelconque en mettant la cellule concernée en exergue

Fermer l’explorateur ou l’éditeur de données avant de continuer à utiliser STATA

IMPORTANT : Si vous êtes un simple utilisateur de données, vous ne devez pas les modifier. Si vous le faites, créez un fichier Do/Log pour votre session.

Explorer les données :

Connaître les variables

La commande describe Aperçu de la base de données :

Nombre d‟observations dans la base de données

Nombre de variables dans la base de données

Taille de la mémoire utilisée par la base de donnée et taille de la mémoire restante

Informations de base sur les variables dans la base de données

Aperçu de quelques variables uniquement :

describe a1_11a a1_12

La commande codebook Aperçu plus détaillé des variables

Nom, type et étiquette de la variable

Quelques statistiques descriptives de base sur la variable

Aperçu encore plus détaillé de quelques variables seulement :

codebook a1_11a a1_12

Explorer les données :

Types de variables

Données numériques Stata lit les variables numériques

Types : byte, int, long, float, double (supporte différents nombres de chiffres après la décimale)

La valeur manquante est identifiée par « . »

Données alphanumériques Stata lit les variables textuelles

Types : str1, str2, str3, etc. (le chiffre après str indique la longueur maximale de la chaîne de caractères)

La valeur manquante est identifiée par « » (espace)

Pour des détails supplémentaires : help data types

Explorer les données :

Étiquettes des variables et des valeurs

Les étiquettes des variables donnent une brève description de celles-ci a1_11a est étiqueté « âge/années »

a1_12 est étiqueté « État matrimonial »

Les étiquettes des valeurs décrivent les variables numériques Exemple : Le code correspondant à État matrimonial (a1_12)

1 Jamais marié

2 Marié/Union civile (Monogame)

3 Marié (Polygame)

4 En cohabitation

5 Divorcé/Séparé

6 Veuf

Le mots figurant sur les étiquettes s‟affichent dans la page des résultats bien que la valeur des variables soit une donnée numérique (tab a1_12)

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l‟aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Statistiques sur les variables :Tableaux récapitulatifs à simple ou à double entrée

Tableau à simple entrée : tabulate variable1 Exemple : tab a1_12

Affiche le nombre de fois qu‟une variable précise prend une valeur

Le % d‟observations ayant cette valeur

Peut inclure les valeurs manquantes : tab a1_12, miss

Tableau à double entrée : tabulate variable1 variable2 Exemple : tab a1_12 b12_12

La variable1 s‟affiche dans la rangée et la variable2 en colonne

Peut également permettre d’afficher : Le % d‟observations pour chaque combinaison : tab a1_12 b12_12, cell

Le % d‟observations ayant la valeur de chaque variable1 correspondant à chaque colonne de la variable2, séparément : tab a1_12 b12_12, col

Le % d‟observations ayant la valeur de chaque variable2 correspondant à chaque rangée de la variable1, séparément : tab a1_12 b12_12, row

Pour supprimer le calcul des fréquences des valeurs prises par une variable : Ajouter nofreq à la fin de la commande : tab a1_12 b12_12, row nofreq

Statistiques sur les variables :Tableaux de statistiques récapitulatives

La commande summarize (ou sum)

sum variable1 variable2 … (toutes la variables que vous souhaitez inclure)

Exemple : sum a1_11a b12_17

Produit des statistiques récapitulatives de base

Nombre d‟observations, moyenne, écart-type, valeurs minimum et maximum

La commande sum …,d

sum variable1 variable2 …, d (toutes la variables que vous souhaitez prendre en compte)

Exemple : sum a1_11a b12_17, d

Produit des statistiques supplémentaires

Asymétrie, aplatissement, valeurs minimum et maximum, différents percentiles

Quand utiliser tab ou sum ? Orientations générales :

tab : variables qualitatives (sexe, état matrimonial, province) et valeurs discrètes (nombre d‟enfants)

Sum : variables continues (revenu, versements directs) et variables discrètes

Pour une variable discrète, on peut utiliser la commande tabulate ou summarize (exemple, taille du ménage)

Statistiques sur les variables :

Produire des tableaux statistiques

La commande Tabstat Produit le tableau statistique désiré pour autant de variables que vous le voulez

Ces tableaux sont plus utiles à des fins de présentation que ceux obtenus après l‟exécution de la commande sum

Préciser les variables et les statistiques que vous souhaitez voir dans le tableau Tabstat variable1 variable2 … , s(statistiques…)

Exemple : tabstat a1_11a b12_17, s(mean sd)

Pour afficher la liste des statistiques disponibles : help tabstat

Pour obtenir des statistiques par sous-groupe, ajouter en option by(variabledusous-groupe) Exemple : Pour afficher la moyenne et l‟écart-type d‟âge en fonction de l‟état

matrimonial

tabstat a1_11a , s(mean sd) by(a1_12)

Statistiques sur les variables :Exporter les tableaux vers Excel, etc.

Méthode copier et coller

Coller les tableaux simples dans Word

Utiliser la police Courier New 9

Méthode copier et coller le tableau

Coller les tableaux formatés dans Excel

Pour conserver le formatage, copier exclusivement le tableau et aucun autre résultat !

Statistiques sur les variables :

Identifier les valeurs atypiques

Valeurs atypiques Il s‟agit des valeurs extrêmes des variables qui peuvent fausser les estimations

Détecter le problème tab1 varlist : produit un tableau à une entré pour chaque variable

histogram var1

scatter var1 var2 : produit des diagrammes de dispersion

Traitement des valeurs atypiques Utiliser les mesures qui ne peuvent pas être affectées par ces valeurs, telles que la médiane

au lieu de la moyenne

Supprimer les valeurs atypiques de la base de données (en général on les définit comme étant des valeurs manquantes)

Utiliser la command : mvdecode varlist, mv(numlist) pour transformer les valeurs numériques en valeurs manquantes

Exemple Règle : Considérons un chiffre supérieur à 6 comme la valeur atypique de la variable

« nombre total d‟enfants (de sexe masculin) »

Créer une variable dont la valeur est égale à b12_01a gen boyspw= b12_01a

Transformer les valeurs atypiques en valeurs manquantes replace boyspw=. if b12_01a>6

Ou mvdecode boyspw, mv (7 8 9)

Vérifier les résultats tab boyspw, miss

Aperçu de la session

1) Pour commencer : Ouvrir une base de données

2) Obtenir de l‟aide

3) Les fichiers Do

4) Les fichiers Log

5) Explorer les données

6) Statistiques sur les variables

7) Modifier les données

Modifier les données :

Structure des commandes

[1 By] : [2 Command] [3 Var] [4 Specify] [5 If], [6 Options]

1 « by » Clause restrictive (facultatif)

Applique à nouveau la commande à des sous-groupes de données

2 Commande Principale instruction donnée au logiciel STATA

3 Variables Une ou plusieurs variables

4 Donner des précisions sur la commande

Pour certaines commandes

5 « if » Clause restrictive (facultatif)

Signifie que la commande ne doit utiliser que les données précisées

6 Options

Autres précisions

Toujours à la fin et toujours après une virgule

Modifier les données :

L’expression « by »

[1 By] : [2 command] [3 Var] [4 Specify] [5 If], [6 Options]

Exécute les commandes en fonction du sous-groupe (défini par une variable) Parfois au début (avant la commande en [1])

by variable, sort: ……

bysort variable: ……

Parfois, à la fin, comme une option (en [6])

….. , by (variable)

Exemple: Population utilisant actuellement une méthode contraceptive en fonction

de l‟état matrimonial :

by a1_12, sort: tab b12_12

bysort a1_12: tab b12_12

Modifier les données :

L’expression « if »

[1 By] : [2 command] [3 Var] [4 Specify] [5 If], [6 Options]

Fait savoir au logiciel STATA que la commande ne concerne que certaines observations

Vient après la commande donnée à STATA

Expressions courantes avec « if » : >, >=, <, <=, ==, != or ~=

Pour plus d‟une condition, utiliser le signe & (et) Exemple : if age>20 & age<=30

Pour plusieurs possibilités, utiliser | (ou) Exemple : if year==2004 | year==2005

Modifier les données :

Quelques commandes essentielles

generate (gen) et extended generate (egen) Pour créer de nouvelles variables

replace Remplace les variables existantes

rename Renommer une variable

label var Étiquette une variable en précisant son contenu

label val Étiquette la valeur d‟une variable

drop Supprime les variables ou les observations précisées

keep Conserve seulement les variables choisies (supprime toutes les autres)

Modifier les données : Utiliser la commande « gen » (generate)

Créer de nouvelles variables

Exemples avec la commande gen : gen ones = 1 (colonnes contenant le chiffre 1)

gen age=a1_11a

gen age20=1 if a1_11a==20

gen over30=1 if a1_11a >30 & a1_11a!=.

STATA lit les données manquantes comme un nombre tendant vers l‟infini. Utiliser prudemment les signes > et >=

Gen variable = variable1 / variable2 Divise variable1 par variable2

On utilise la commande gen pour des fonctions de base : +, -, *, /, etc.

Note : Le nom des variables ne commence jamais par un chiffre

Modifier les données :

Utiliser la commande « replace »

Utilisée exactement comme la commande gen mais s‟applique aux variables existantes

Exemple avec la commande replace : replace over30=0 if age<=30 &age!=.

over30 devient une variable auxiliaire

Le signe égal saisi une fois (=) dénote l‟égalité. Il est utilisé dans les commandes generate et replace

Le signe égal doublé (==) est utilisé pour tester l‟égalité dans le cadre d‟un test logique dont le résultat peut être un (vrai) ou zéro (faux)

Modifier les données :

Utiliser la commande « egen »

Elle permet de créer des variables mais utilise souvent des fonctions plus compliquées Fonctions statistiques telles que la moyenne, l‟écart-type, etc.

Exemples avec la commande egen : egen mean_variable=mean(variable)

egen mean_age=mean(age)

Pour un seul sous-groupe de l‟échantillon

egen mean_age_over30=mean(age) if over30==1

Pour chaque sous-groupe, séparément

Exemple : moyenne pour les personnes âgées de 30 ans au plus et moyenne pour les personnes âgées de 30 ans au moins

by over30, sort: egen agegrpmean=mean(age)

egen agegrpmean=mean(age), by(over30)

Modifier les données :

Renommer et étiqueter les variables

Renommer les variables La commande rename permet de changer le nom d‟une variable

rename [nom de la variable] [nouveau nom de la variable]

Exemple : rename over30 thirty_plus

Étiqueter les variables Les étiquettes des variables décrivent celles-ci

C‟est un bon moyen de vous rafraîchir les idées plus tard. Cela permettra aussi aux autres utilisateurs de comprendre votre base de données !

label var variable « [petite description de la variable] »

Exemple : label var over30 « =1 si la femme a plus de 30 ans »

Modifier les données :

Étiqueter les valeurs

Les étiquettes des valeurs décrivent les variables numériques

Exemple : no=0 et yes=1 dans la base de données

Première étape : Créer l‟étiquette

label def [lbl name] [value1] “[lbl for value1]” value2 “[lbl for value2]”

Exemple : label def ny 0 “No” 1 “Yes”

La valeur précède toujours l’étiquette qui est présentée entre des guillemets

Deuxième étape : Affecter la valeur de l‟étiquette à la variable concernée

label val [variable étiquetée] [étiquette que vous voulez lui affecter]

Exemple : label val over30 ny

Note : La même étiquette peut être affectée à d’autres variables!

Modifier les données :Supprimer et conserver des variables et des observations

Supprimer et conserver des variables drop permet d‟effacer les variables que vous ne souhaitez pas que STATA

conserve

Drop variable

keep permet de supprimer toutes les variables, à l‟EXCEPTION de celles que vous souhaitez que STATA conserve

Keep variable1 variable2 …

Supprimer et conserver des observations Préciser les observations que vous voulez effacer ou conserver en

utilisant l‟expression « if »

drop if over30==0 Permet de supprimer toutes les observations pour lesquelles la variable

correspondant à over30 est égale à zéro

keep if over30==1 Permet de conserver toutes les observations pour lesquelles la variable

correspondant à over30 est égale à un

Modifier les données :

Commandes répétitives La commande foreach

Permet de faire des boucles

Les boucles sont utilisées pour effectuer des tâches répétitives

Syntaxe

foreach item in a-list-of-things {

body of loop using `item' ...

}

Exemple

label def ny 0 “No” 1 “Yes”

foreach x in b12_06a b12_06b b12_06c b12_06d b12_06e b12_06fb12_06g b12_06h b12_06i b12_06j b12_06k b12_06l {

replace `x'=0 if `x'==2

label value `x' ny

tab `x„

}

Modifier les données :

Enregistrer les modifications

Toujours sauvegarder la base de données modifiée

sous un nouveau nom

save NOUVELLEBASEDEDONNÉES pour sauvegarder

une nouvelle base de données

save NOUVELLEBASEDEDONNÉES, replace pour

remplacer la dernière version

Exemple : save session1_changed.dta, replace

Ne jamais remplacer le fichier de données original !!!

Merci