Bases de données - Notes de Cours PDF
Document Details
Uploaded by BestKnownTucson
UCLouvain Saint-Louis Bruxelles
Tags
Summary
Ces notes de cours détaillent les bases de données et la façon de gérer les informations. Elles incluent des exemples concrets et des instructions pour créer et manipuler les bases de données et des explications sur la manière de manipuler des données avec Excel et SPSS.
Full Transcript
5. Bases de données Bon. Maintenant qu’on a les données, qu’est ce qu’on fait? 5.1 Notions de bases Qu’est-ce qu’une base de données? Des informations brutes Une structure (relationnelle, orientée-objet, centralisée, non-structurée,…) De nombreux systèmes de gestion (MySQL, Oracle,...
5. Bases de données Bon. Maintenant qu’on a les données, qu’est ce qu’on fait? 5.1 Notions de bases Qu’est-ce qu’une base de données? Des informations brutes Une structure (relationnelle, orientée-objet, centralisée, non-structurée,…) De nombreux systèmes de gestion (MySQL, Oracle, Access,…) Trois notions fondamentales : Une observation Une variable Une valeur / donnée Une présentation en tableau 5.1 Notions de bases N° Mange des Nombre de chiens à Résultats en MQ1 céréales le la maison sur 20 matin 1 Oui 2 14 Chaque colonne est une variable 2 Oui 0 7 Chaque ligne est un 3 Non Ne sait pas 19 enregistrement/observation 4 Non 0 5 Chaque cellule du tableau est une donnée 5 NR NR NR La première colonne est l’index des 6 Oui 0 10 observations La première ligne contient les 7 Non 1 12 libellés des variables 5.2 Création d’une BDD La règle : maximiser les chiffres, minimiser les mots Chaque question correspond à une variable Chaque réponse correspond à une modalité (= une valeur = une donnée) ! Il ne peut pas y avoir de concurrence logique ou empirique dans une case. Sinon : retravailler la structure. 5.2 Création d’une BDD Il ne peut y avoir de concurrence logique/empirique: exemple sur les variables Question/Réponse Encodage dans la base de données Les lieux que vous privilégiez pour vos vacances sont : Choisissez une ou plusieurs parmi les propositions Lieu de vacances privilégié suivantes La côte ❑ La côte Les centres urbains Répondant 321 ❑ La montagne La montagne/ La campagne ❑ Les centres urbains ❑ La campagne ❑ …. 5.2 Création d’une BDD Il ne peut y avoir de concurrence logique/empirique: exemple sur les variables Des questions à réponses multiples sont codées en autant de variables qu’il y a de réponse possible pour résoudre le problème de concurrence. Répondant Q1-cote Q1-Montagne Q1-CU Q1-Camp … ID 1 1 0 0 0 … 2 0 0 1 0 … 3 0 1 0 1 … … … … … … … 5.2 Création d’une BDD Il ne peut y avoir de concurrence logique/empirique: exemple sur les observations Enquête comparative. Sonder les mêmes répondants avec les mêmes questions en 2018, en 2019 et en 2020…Imaginons 3 variables: V1 – sexe V2 – salaire V3 – satisfaction du salaire (1 – PDT satisfait 5 – TAF satisfait) Comment coder cela dans une base de données? ➔ Cas plus complexe… Oblige à se questionner sur ce que l’on veut faire et ce que l’on sait faire… Grosso modo il y a deux types de solutions: Le Wide et le Long format. 5.2 Création d’une BDD ID Année V1 V2 V3 ID 2018 2018 2018 2019 2019 2019 2020 … 1 2018 1 1234 4 -V1 -V2 -V3 -V1 -V2 -V3 -V1 1 2019 1 1322 3 1 1 1234 4 1 1322 3 1 1 2020 1 1454 3 2 2 1752 2 2 1762 1 2 2 2018 2 1752 2 3 1 2154 5 1 2154 4 1 2 2019 2 1762 1 4 1 1453 3 1 1423 2 1 2 2020 2 1772 1 Wide Format 3 2018 1 2154 5 … … … … … Dans le Wide Format, l’angle d’analyse sera plutôt centré sur le Long Format sujet alors que dans le Long Format, le focus sera mis sur la dimension temporelle. 5.2 Création d’une BDD 5.2.1 Paramétrer les variables Chaque variable nécessite un type d’encodage uniforme permettant son utilisation Le type de variable indique au logiciel de traitement la manière dont il doit lire l’information contenue dans une variable. Ceci est très important car cela définit les possibilités de traitements ultérieurs Différents types de variables: Chaînes de caractère Nombres entiers Dates Nombre entiers précédés d’un $ ou suivi d’un % … 5.2 Création d’une BDD 5.2.1 Paramétrer les variables Chaque variable est codée et libellée Le code de variable est un nom généralement court, dépourvu de caractères spéciaux, permettant une utilisation efficace de la BDD. Le libellé de variable est un nom détaillant l’information contenue par la variable, utilisé lors de la production de rapports. Codes Libellés Q1 Genre du répondant Q2 Plus haut degré de diplôme obtenu Q3A Niveau de satisfaction [Salaire] Q3B Niveau de satisfaction [Avantages extra-légaux] Q3C Niveau de satisfaction [Nombre de jours de congés] … … 5.2 Création d’une BDD 5.2.1 Paramétrer les variables Chaque variable peut être formatée Le format permet de présenter les données stockées sous une forme différente. Il s’agit en somme d’une table de référence liant les valeurs des données brutes encodées et leurs traductions désirées. Données Brutes Données Formatées ID V1 V2 V3 ID V1 V2 V3 1 1 5 200,412 1 Oui Très satisfait 200,4€ 2 0 1 1953,72 2 Non Très peu satisfait 1953,7€ 3 1 2 786,2955 3 Oui Peu satisfait 786,3€ 4 1 3 986,233 4 Oui Moyennement satisfait 986,2€ 5.2 Création d’une BDD 5.2.1 Paramétrer les variables Formatter des variables nominales/ordinales : Chaque modalité reçoit un code logique associé à son libellé Ex : variable ‘sexe’ : « masculin » (code = 1), « féminin » (code = 2) Ex : variable ‘amour des frites’ : « Important » (code = 1), « modéré » (code = 2), « faible » (code = 3➔Dans les variables ordinales: préserver l’ordinalité des chiffres. Formatter des variables numériques: Définir l’unité de mesure (dans le libellé de variable), le nombre de décimales désirées,…. Ex : « réponse à la variable ‘âge’ : 24 ans » devient « 24 » Pour certaines mesures numériques, possibilités d’appliquer un masque prédéfinis par de nombreux logiciels Ex: Les dates, les montants monétaires,… Formatter des questions ouvertes On ne formate généralement pas les questions ouvertes de type « commentaire ». Si la question est importante, il faut alors passer par un lourd travail d’analyse textuelle et de catégorisation pour transformer la variable de texte long en variable nominale/ordinale. 5.2 Création d’une BDD 5.2.1 Paramétrer les variables L’utilisation des formats permet en outre d’encoder les données manquantes et les non réponses (« Je ne sais pas », « non répondu », « ne s’applique pas », « ne veux pas répondre »…) Règle générale: - Utilisation de valeurs chiffrées élevées ou négatives (éloignées de l’étendue de l’échelle de la variable) Ex: 97 = « Je ne sais pas », 98 = « ne s’applique pas », 99 = « Je ne veux pas répondre »… - Dans le cas de variables numériques! Chiffre ne doit pas être confondu avec des données probables! - Exemple: « quel est votre rémunération actuelle »? ➔ « Je ne sais pas » ? 99? 999? 99999999999999? -1? 5.2 Création d’une BDD 5.2.2 Documenter les variables, un outil: le codebook Le code book est un document centralisant l’ensemble des traductions entre la base de données brutes et les données libellées, entre les codes des variables et leurs libellés. Il s’agit donc du document détaillant l’ensemble des informations comprises dans la base de données. Vous pouvez utiliser un traitement de texte ou un tableur pour créer ces codebook. Dans certains logiciels de traitements statistiques, des procédures existent pour produire le code-book. Cela n’empêchera pas que le travail intellectuel devra être effectuer en amont et encoder d’une manière ou d’une autre! 5.2 Création d’une BDD Pourquoi un codebook est important? 5.2 Création d’une BDD 5.2.2 Documenter les variables, un outil: le codebook Code de la Libellé de la variable Code de la modalité Libellé de la modalité variable V01 Mangez-vous des céréales le matin? 1 Oui 2 Non 99 Ne sait pas 999 Non réponse V02 Combien de chiens avez-vous à votre domicile? Nombre Nombre 99 Ne sait pas 999 Non réponse V03 Quels ont été vos points à la session de janvier en MQ1? Nombre Nombre 99 Ne sait pas 999 Non réponse V04 Combien de chats avez-vous à votre domicile? Nombre Nombre 99 Ne sait pas 999 Non réponse V05 Quels ont été vos points à la session de janvier en Méthodes de terrain ? Nombre Nombre 99 Ne sait pas 999 Non réponse 5.2 Création d’une BDD 5.2.2 Documenter les variables, un outil: le codebook Les informations requieses ad- Informations supplémentaires minima dans un codebook souhaitables Code et libellé de la variable Type de variable : nominale, Codes et libellés des modalités de ordinale, échelle la variable Format d’encodage: texte Explications qualitatives supplémentaires sur la variable 5.3 Introduction à Excel Un logiciel utile pour… Réaliser le code-book Encoder des données (dans des « cellules ») Réaliser des opérations (« commandes ») de base (addition, moyenne,…) 5.3 Introduction à Excel Organisation cartésienne: - En colonne - En ligne - En cellule - En Feuilles - (Voir en classeurs) - Chaque cellule a donc une coordonnée unique! F12 Feuil1!F12 5.3 Introduction à Excel Quelques menus/options utiles - Formules - Graphiques dans le menu « Insérer » - Formats d’encodage - Filtres de colonnes - Opérations de bases - Mise en forme de tables 5.3 Introduction à Excel 5.3.1 Opérations de base A partir des données exemplifiées dans le codebook au point 5.2.2, imaginons que l’on voudrait… Connaître le nombre d’animaux à domicile pour chaque étudiant Connaître le nombre total de chiens possédés par mon échantillon Connaître la moyenne des points en MQ1 et MT pour chaque étudiant Connaître la moyenne des points en MQ1 et MT pour chaque cours Comment faire? Le bon réflexe: créer une nouvelle variable à partir des variables existantes ➔En cas d’erreur, on efface pas les données originelles. Dans le cas inverse, s’assurer d’avoir des copies de la base de données! Comment? - A la main? ➔ Fastidieux! - Trouver une manière d’automatiser la création de variables ➔ Les formules Excel constituent un excellent outil pour cela! 5.3 Introduction à Excel 5.3.1 Opérations de base Les formules dans excel: qu’est-ce? Il s’agit une sorte d’équation mêlant des opérations et des opérateurs logiques Elles sont introduites par l’apparition du signe « = » Elles peuvent intégrer des fonctions prédéfinies Fonctions sont appelées par leurs noms suivi d’une parenthèse. Exemple: =SOMME() Au sein de cette fonction on inclue les arguments nécessaires séparés par des ; ➔ =SOMME(7;6) Le résultat de la fonction sera délivré au sein de la cellule ➔ =SOMME(7;6) ➔ 13 Permettent une mise à jour automatique des données!! Au lieu de renseigner des chiffres, on pourrait renseigner des coordonnées de cellules ➔ =SOMME(A2;A3) Si on change les valeurs au sein des cellules A2 et A3, le résultat de la somme sera également modifié Il existe une multitude de fonctions prédéfinies 5.3 Introduction à Excel 5.3.1 Opérations de base Exemple 1: Connaître le nombre d’animaux à domicile Informations nécessaires: V02 et V04 Type d’opération: addition Résultat: Une nouvelle variable V06 étant la somme de V02 et V04 Etapes Sélectionner la colonne en bout de table correspondant à la première ligne /!\ L’écriture =SOMME(C2 : E2) sommera Ecrire la formule = C2+ E2 directement dans la l’entièreté des cellules entre C2 et E2. Ici, cela n’est cellule OU dans la barre de formule pas le but recherché! Ecriture alternative: =SOMME(C2;E2) Ainsi, l’écriture =SOMME(C2 : C2857) permet de Copier-coller la cellule sur les autres cellules vides sommer très rapidement une quantité d’information de la colonne importante. 5.3 Introduction à Excel Copier-coller des cellules Peut être effectué via le clique droit de la souris (copier) puis un nouveau clique sur la cellule de destination (copier) ; via les raccouris ctrl+c / ctrl+v ou encore en faisant simplement « glisser » la cellule depuis le coin inférieur droit vers la ligne ou la colonne désirée Lorsque l’on copie-colle une cellule, les formules se « décalent » d’une colonne ou d’une ligne En colonne =B2 + C2 devient = C2+D2 ; =D2 + E2 ; … En ligne =B2 + C2 devient =B3 + C3; =B4 + C4 ; …. Si l’on ne désire pas cet effet, il faut alors « verrouiller » les cellules grâce à l’utilisation du signe $ $B2 ➔ Verrouille la colonne B$2 ➔ Verrouille la ligne $B$2 ➔ Verrouille la cellule 5.3 Introduction à Excel Verrouillage des cellules: exemples A1+B1 D E F A$1+B$1 D E F 1 3 5 3 1 3 5 3 2 9 11 6 2 3 5 3 BDD A B C 3 15 17 9 3 3 5 3 1 1 2 3 2 4 5 6 $A1+$B1 D E F $A$1+$B$1 D E F 3 7 8 9 1 3 3 3 1 3 3 3 2 9 9 9 2 3 3 3 3 15 15 15 3 3 3 3 5.3 Introduction à Excel 5.3.1 Opérations de base Exemple 1: Connaître le nombre d’animaux à domicile Est-ce que le résultat est satisfaisant? Pas tout à fait: Présence d’un chiffre abbérant. Excel n’est pas au courant que 99 ou 999 signifient une absence de réponse. Comment procéder? A) Supprimer les données B) Les remplacer par du vide C) Ajouter une formule conditionnelle (plus avancé) Une donnée manquante (vide) en Excel équivaut à 0 5.3 Introduction à Excel 5.3.1 Opérations de base Exemple 2: Connaître le nombre de chiens dans l’échantillon Informations nécessaires: V02 Type d’opération: addition pour tous les individus Résultat: Une nouvelle cellule (soit en fin de table, soit en dehors de celle-ci) indiquant la somme Etapes /!\ où vous stocker cette information en fonction de Sélectionner la cellule où vous désirez stocker cette l’utilisation ultérieure de la base de données! information ➔ Fin de table? ➔ A ne pas considérer comme un individu! Ecrire la formule = SOMME(C2:C8) directement ➔ « A côté de la table? » ➔ Problème à l’exportation! dans la cellule OU dans la barre de formule Le mieux? Créer une feuille spécifique avec les statistiques analytiques 5.3 Introduction à Excel 5.3.1 Opérations de base Exemple 3: Connaître la moyenne par étudiant en MT et MQ1 Informations nécessaires: V03 et V05 Type d’opération: Moyenne par individu Résultat: Une nouvelle variable V07 avec la moyenne de chaque étudiant Etapes Sélectionner la colonne en bout de table correspondant /!\ Ecriture alternative: =(D2+F2)/2 à la première ligne ➔ Théoriquement correcte Ecrire la formule =Moyenne(D2;F2) directement dans MAIS si une cellule est vide (D6) ➔ (0+14)/2 ➔ 7 ➔ Pas correcte ➔ Présence de non-réponse! la cellule OU dans la barre de formule ➔ /!\ à la priorité des opérations =D2+F2/2 pas correcte! Copier-coller la cellule sur les autres cellules vides de La fonction Moyenne() ignore les arguments manquants la colonne 5.3 Introduction à Excel 5.3.1 Opérations de base Exemple 4: Connaître la moyenne pour chaque cours en MT et MQ1 Informations nécessaires: V03 et V05 Type d’opération: deux moyennes sur l’ensembles des individus Résultat: deux cellules contenant les moyennes respectives de MT et MQ1 Etapes Sélectionner les cellules où vous désirez stocker ces Calculer une moyenne générale du cours? informations =MOYENNE(D2:D8;F2:F8) Ecrire la formule = Moyenne(D2:D8) ou =MOYENNE(H2:H8) Moyenne(F2:F8) directement dans la cellule OU dans la barre de formule 5.3 Introduction à Excel 5.3.2 D’autres opérations (plus ou moins complexes…) Comptage: NB() ➔ Compte le nombre de cellules possédant une valeur numérique ; NBVAL() ➔ Compte le nombre cellules non-vides ; NBVIDE() ➔ compte le nombre de cellule vides Fonction conditionnelles: SI(condition;valeur si vraie; valeur si fausse) ➔ SI(B2 Nombre de décimales Limites des décimales affichées. Utile pour le format des résultats Libellé de variable Nom détaillé de la variable procurant une information plus complète pour le lecteur Libellé des valeurs Modalité de réponse correspondant à la valeur. Ex: 0=Femme; 1 = Homme Données Manquantes Spécifier les valeurs à ne pas prendre en considération lors des calculs Niveau de mesure Nominale, Ordinale ou Numérique Largeur de colonne Pas vraiment utile… Alignement du texte 6.2 Documenter les variables En « Button-click » via la vue des « Définir les propriétés des variables » variables dans le menu « Données » 6.2 Documenter les variables « Définir les propriétés des variables » dans le menu « Données » Sélectionner des variables à documenter Paramètres Variable affichée parmi celles sélectionnées Execution / Syntaxe 6.2 Documenter les variables Bouton « Paste » ➔ Exécution de la syntaxe? Exécution du code sélectionné Se repérer dans la syntaxe? Possibilité d’ajouter des commentaires. Permet de se repérer dans le code même si on ne le comprend pas Un commentaire commence par un * et termine par un. Possibilité de programmer directement dans la syntaxe variable labels nom_de_variable “libellé” [nom_de_var. “libellé”] […]. value labels nom_de_variable valeur “libellé” [val. “lib.”] [val. “lib.”] […]. missing value liste_de_variables (liste_de_valeurs). Si on n’exige pas de vous de programmer, ce n’est pas non plus incomprehensible. 6.3 Transformer/Créer des variables Quatre opérations principales (parmi d’autres) COMPUTE RECODE Opérations arithmétiques Substitution de valeurs Structures conditionnelles COUNT Permet des recodages plus Comptage d’occurrences complexes 6.3 Transformer/Créer des variables 6.3.1 Compute Variables Principe : créer des nouvelles variables par calculation Usage : affecter une formule à une nouvelle variable en utilisant des données existantes ou des constantes, des opérateurs arithmétiques, fonctions… Quel sens? : Compute = « calculer », il faut que cela soit calculable! (var. numériques) L’opération doit être formalisable sous la forme d’une équation Nécessaires d’avoir les informations de base L’avantage : calculer pour tous les individus 6.3 Transformer/Créer des variables 6.3.1 Compute Variables Quelques exemples Exemple 1 Exemple 2 Exemple 3 Informations acquises Année de naissance (AN) Consommation annuel de Points de chaque étudiants Année en cours (AC) ménage d’électricité (ELE) (PE) Nombre de personne par J’ai oublié de rajouter un ménage (nMEN) point à PE Information souhaitée Âge actuel (AA) Consommation moyenne La note modifiée (PF) par individu (ELEpp) Opération? AC– AN = AA ELE/nMEN = ELEpp PE+1 = PF 6.3 Transformer/Créer des variables 6.3.1 Compute Variables En click-button: Se situe dans le menu « TRANSFORMER » ➔ « CALCULER LA VARIABLE » Jeu de Données pour les exemples dans la section: 6.3 Transformer/Créer des variables 6.3.1 Compute Variables EX. 1: On voudrait obtenir la moyenne obtenue pour chaque étudiant pour les cours du continnum méthodologique Code de la nouvelle variable Liste des variables disponibles Opération à réaliser Exécution / Code de syntaxe 6.3 Transformer/Créer des variables 6.3.1 Compute Variables Avec la syntaxe Traduction en code de syntaxe. COMPUTE NOMVAR= equation. Execute. N’oubliez pas d’éxectuer en sélectionnant le code. La Feuille des résultats affichera également un message. Signale ce qui a été fait, ainsi que les erreurs. Une transformation de variable n’est pas un résultat: il est normal qu’il n’y ait rien d’autre qu’un message 6.3 Transformer/Créer des variables 6.3.1 Compute Variables EX. 2: On voudrait obtenir l’indice de masse corporelle de chaque étudiant 6.3 Transformer/Créer des variables 6.3.1 Compute Variables Les calculs semblent bons mais est-ce pour autant que c’est correct? Moyenne = OK! Lorsqu’une donnée est manquante, SPSS renseigne une donnée manquante dans la variable calculée. BMI de 0??? ➔ Pas ok!!! 6.3 Transformer/Créer des variables 6.3.1 Compute Variables Correction de l’équation Est-ce ok maintenant? Les données manquantes n’ont pas été encodées! 6.3 Transformer/Créer des variables 6.3.1 Compute Variables Il n’y pas de mise à jour automatique des données contrairement à un logiciel comme Excel Besoin de ré-exécuter la commande Syntaxe = gain de temps En résumé: Vérifiez toujours la validité de votre calcul ainsi que le bon encodage de vos données sans quoi, même un bon calcul ne donnera pas le résultat souhaité. 6.3 Transformer/Créer des variables 6.3.2 Recode Variables Principe : Substituer des valeurs d’une variable d’origine par d’autres valeurs dans la variable de destination Usage : regrouper des réponses dans des modalités plus larges Soit dans la même variable (écrasement de la première) Soit dans une nouvelle variable (préférable) Remplacer des réponses existantes par d’autres Quel sens? : Une nouvelle présentation de l’information Toujours dans le sens d’un appauvrissement Typiquement : le « classement » dans des catégories ou le « regroupement » Variables nominales Variables ordinales Variables numériques Possibilité de transformation 6.3 Transformer/Créer des variables 6.3.2 Recode Variables Quelques exemples Exemple 1 Exemple 2 Exemple 3 Informations acquises Points de chaque Revenus des ménages Plus haut niveau étudiants d’éducation obtenu détaillé Information souhaitée Réussite/échec Classement en catégories de Niveaux d’éducation revenus généralisés (primaire; secondaire; supérieur) Opération? [0;10[ ➔ 0 « échec » [0;1000[ ➔ 0 “ =12” sur la “>=1” sur les 7 variables “>=1” sur les variables variable Question: si j’avais voulu savoir le nombre total d’animaux à la maison. Est-ce qu’un COUNT aurait été necessaire? COMPUTE! 6.3 Transformer/Créer des variables 6.3.3 Count En click-button ➔ « TRANSFORMER » ➔ « Compter les occurrences » Ex. Je voudrais savoir combien d’examens ont été réussis par chaque étudiants parmi MQ1, MQ2, MQ3 et DMSS. Variable de destination Choix des variables Définition des valeurs à compter (mêmes options que RECODE) 6.3 Transformer/Créer des variables 6.3.3 Count Avec la syntaxe Code de syntaxe: Nvar = ovar1 ovar2 ovar3 … (oval) /!\ User-defined missing values ➔ Si “99” = “Je ne sais pas”… Sera inclu dans cette operation… 6.3 Transformer/Créer des variables 6.3.4 Structures conditionnelles Possibilités de le faire en click-button via la commande « IF »/ « SI » MAIS pas pratique du tout! ➔ Plus simple via la syntaxe! Comment s’y prendre? Lister une série de conditions (entre parenthèses) suivies d’une imputation de valeur sous la forme IF (VARIABLE CONDITION) VARIABLE = valeur Exemple: SI(étudiant à réussi au moins deux examens) ALORS il ira à DisneyLand 6.3 Transformer/Créer des variables 6.3.4 Structures conditionnelles Exemple plus complexe, on possède les informations suivantes: V1 : Le revenu net en euros V2 : Le sexe du répondant (1 = homme, 2 = femme) V3 : Le statut conjugal (1 = couple, 2 = pas couple, 3 = c’est compliqué) On veut comparer le revenu de toutes les combinaisons possibles (6 catégories) If ((V2=1) and (V3 = 1)) statut = 1. If ((V2=1) and (V3 = 2)) statut = 2. If ((V2=1) and (V3 = 3)) statut = 3. N’oubliez pas de libéller les modalités par la suite If ((V2=2) and (V3 = 1)) statut = 4. If ((V2=2) and (V3 = 2)) statut = 5. If ((V2=2) and (V3 = 3)) statut = 6. EXECUTE. Utilisation d’un connecteur logique: AND (les deux conditions doivent être remplies) OR (une des deux conditions doit être remplie) 6.3 Transformer/Créer des variables 6.3.4 Structures conditionnelles Exemple plus complexe, on possède les informations suivantes: V1 : Filière de l’étudiant (1 = Sciences sociales, 2 = Autre filière) V2 : Résultat en DMSS V3 : Résultat en MQ1 Je veux une nouvelle variable qui distingue les filières tout en me renseignant si l’étudiant à au moins réussi un examen IF(V1 = 1) AND ((V2 >=10) OR (V3 >= 10)) nvar = 1 IF(V1 = 2) AND ((V2 >=10) OR (V3 >= 10)) nvar = 2 IF(V1 = 1) AND ((V2