Partie 3 : exercices sur le corpus "Prématurés 96"

Pour télécharger l'archive contenant les fichiers de travail p96.tab, p96.bal et l'index des mots contenus dans le corpus : c'est içi.
On lira pour commencer la présentation du corpus disponible sur le site de l'ilpga : cliquez içi.

Emacs

    Fichier de travail : p96.tab

    Tout d'abord, voyons comment ouvrir un fichier avec emacs en passant par les raccourcis clavier :
    L'interface d'emacs se présente comme suit à l'ouverture :



    NB : "c" représente la touche control (en bas à gauche du clavier)


    Dans ce fichier, le nombre débutant la ligne concatène le numéro de bébé, celui du jour de l'observation et celui de l'observation dans la journée. Dans cette partie, on utilisera le menu de recherche de chaînes de caractères pour réaliser les opérations suivantes :
    1. Rechercher les fiches contenant une interrogation


    2. La commande "occur" prend le même type d'argument que la commande unix "egrep" : des expressions régulières.


      Fiches contenant une interrogation : cliquez içi.
    3. Rechercher les fiches correspondant au bébé 12

    4. Cliquez sur l'image ci-dessus pour voir les fiches correspondant au bébé 12
    5. Rechercher les fiches correspondant au bébé 1

    6. Problème avec l'argument ^1 : cela selectionne les bébés associés aux numéros de fiche à deux chiffres comme 10, 11, 12 etc...
      Comme on sait que toutes les fiches correspondant au bébé 1 concatènent au maximum 3 chiffres en début de ligne, on peut restreindre la recherche à 3 chiffres sans risquer de passer à côté de certaines fiches de ce bébé.
    7. Rechercher les fiches pour lesquelles le score médical est de 12
    8. Faire de même pour un score de 10. Pouvez-vous expliquer le résultat ?
    9. Quand on tape " 10$ " en argument de " occur ", le programme ne trouve aucune correspondance, alors que si on analyse le texte à vue d'oeil, les occurrences existent. En revanche, la commande : trouve des fiches avec un score de 10.
      Ceci est dû à la présence de tabulations à la suite des scores.
      On met " nimporte quel caractère sauf un chiffre " parce que toutes les colonnes qui précèdent sont remplies de chiffres et que la colonne qui nous interesse est la dernière colonne.

      Fichier de travail : p96.bal

      Pour cet exercice, on utilise toujours la commande occur, sauf pour le décompte où il faut utiliser la commande "count-matches"
    10. Rechercher les fiches concernant les bébés 10 à 12
    11. Rechercher les fiches concernant les bébés 10 et 12, c'est-à-dire sans 11 et 13
    12. Rechercher le nombre de bébés de 23, ..., 30 semaines


    13. Il y en a 104.
    14. Rechercher les fiches du jour 0 pour lesquels le bébé est né à 28 semaines

    15. On peut utiliser le point sans craindre que la commande selectionne une zone textuelle allant d'une première fiche correspondant au jour 0 d'observation jusqu'à une autre fiche correspondant elle, à un deuxième bébé né à 28 semaines. En effet, le point signifie " n'importe quel caractère sauf le retour à la ligne " et -très important - le fichier contient une fiche par ligne.
    16. Rechercher les fiches des bébés nés entre 23 et 29 semaines
    17. Rechercher les fiches pour lesquels le bébé à la naissance faisait au moins 1000 grammes
    18. Rechercher les fiches pour lesquels le bébé à la naissance faisait moins de 1000 grammes

    fichier de travail : p96.tab

    Dans cette partie, construire des macros sous EMACS pour réaliser les extractions d'informations demandées. On doit obtenir en sortie un fichier pour chaque requête demandée.
    1. Extraire les fiches contenant une interrogation
    2. Pour cette question et pour toutes les autres à venir, il faut créer une nouvelle fenêtre dans laquelle on viendra coller les fiches qui nous intéressent. Pour ce faire, on divise notre unique fenêtre en deux (c-x shift-2), on place le curseur dans la fenêtre du bas (c-x o), on créer un fichier vide à l'endroit de cette fenêtre et en même temps on l'enregistre (c-x c-f). Enfin on a plus qu'a revenir à la 1ère fenêtre (c-x o) pour commencer la macro. On tape c-x ( pour commencer la macro

      A ce stade, nous n'avons dans notre fichier résultat que la première fiche contenant une interrogation. Pour effectuer le même traitement sur tout le fichier automatiquement, on fait : M-shift-0 (le chiffre. NB : "M" = "Alt") immédiatement suivi de c-x-e. C'est seulement après qu'on peut signaler la fin de la macro en tapant : c-x )
    3. Extraire les fiches correspondant au bébé 12
    4. Extraire les fiches correspondant au bébé 1
    5. Extraire les fiches pour lesquelles le score médical est de 12
    6. Faire de même pour un score de 10. Pouvez-vous expliquer le résultat ?
    7. Quelles fiches vont être extraites si l'on demande les fiches commençant par 13 ? Expliquer

    8. " ^13 " extrait les fiches du bébé 1 faite au 3ème jour d'observation. Or on a vu qu'aucune des fiches du bébé 1 ne contenait plus de 3 chiffres. On peut donc préciser ds la commande 13+ 1 chiffre entre 0 et 9 + 1 chiffre entre 0 et 9.

    9. Extraire les fiches correspondant aux bébés faisant au moins 1000 grammes.
    10. On peut d'abord essayer de tester la commande sans enregistrer l'ensemble des manip dans une macro : ceci nous permet de visualiser les résultats séléctionnés dans la fenêtre texte et de revenir en cas d'erreur sur la forme de l'expression régulière et ce, à n'importe quel moment de son écriture (par la touche effacer) :

      Fichier de travail : p96.bal

    11. Extraire les fiches concernant les bébés 10 à 12
    12. Extraire les fiches concernant les bébés 10 et 12, c'est-à-dire sans 11 et 13
    13. Trouver le nombre de bébés de 23, ..., 30 semaines

    14. Il y en a 104.
    15. Extraire les fiches du jour 0 pour lesquels le bébé est né à 28 semaines
    16. Extraire les fiches des bébés nés entre 23 et 29 semaines
    17. Extraire les fiches pour lesquelles le bébé à la naissance faisait au moins 1000 grammes
    18. Extraire les fiches pour lesquelles le bébé à la naissance faisait moins de 1000 grammes
    19. Extraire les fiches rédigées par les infirmières 12 et 22
    20. Extraire les fiches concernant le bébé 10 et ne correspondant pas au jour 0

Egrep

    fichier de travail :p96.tab

    Dans cette partie, on doit obtenir en sortie un fichier pour chaque requête demandée.
  • Extraire les fiches contenant une interrogation
  • Extraire les fiches correspondant au bébé 12
  • Extraire les fiches correspondant au bébé 1
  • Extraire les fiches pour lesquelles le score médical est de 12
  • Faire de même pour un score de 10.
  • Quelles sont les fiches qui vont être extraites si l'on recherche les fiches commençant par 13 ? Expliquer
  • Extraire les fiches correspondant aux bébés faisant au moins 1000 grammes.

    Fichier de travail : p96.bal

    Dans cette partie, on doit obtenir en sortie un fichier pour chaque requête demandée.
  • Extraire les fiches concernant les bébés 10 à 12
  • Extraire les fiches concernant les bébés 10 et 12, c'est-à-dire sans 11 et 13
  • Trouver le nombre de bébés de 23, ..., 30 semaines
  • Extraire les fiches du jour 0 pour lesquels le bébé est né à 28 semaines
  • Extraire les fiches des bébés nés entre 23 et 29 semaines
  • Extraire les fiches pour lesquels le bébé à la naissance faisait au moins 1000 grammes
  • Extraire les fiches pour lesquels le bébé à la naissance faisait moins de 1000 grammes
  • Extraire les fiches rédigées par les infirmières 12 et 22
  • Si l'on veut extraire les fiches rédigées par les infirmières 2, 12 et 22, quel est l'inconvénient de la solution suivante " egrep '(2|12|22)' p96.bal " ?
  • Cette commande selectionne en plus des infirmières recherchées toutes celles dont le nombre commence par 2, à savoir 23, 24, 25... etc : voir içi.
    Il faut donc restreindre la recherche comme suit :
  • Extraire les fiches concernant le bébé 10 et ne correspondant pas au jour 0

Textutils niveau 0

Textutils niveau 1

    Outils : commandes TextUtils etc.

    Fichier de travail : p96.tag

    Essayer de construire un index de tous les adjectifs présents dans le corpus.
    Précaution à prendre : convertir le fichier p96.tag en utf8 pour être sûr de récupérer les adjectifs dans lesquels il y a un accent. (word pour cygwin/ commande unix iconv sur ubunto)

    étape 1 : on extrait avec egrep les lignes contenant les étiquettes "AMS", "AMP", "AFS", "AFP" correspondant aux différents types de flexions des morphèmes adjectivaux et on crée un fichier sortie (opérateur de rédirection ">"):

    Résultat : l'index avec le détail des flexions

    étape 2 : on crée un nouveau fichier sortie dans lequel, comme dans l'étape 1, on filtre les lignes contenant l'étiquette, mais on fait en plus un pipe sur cette commande pour ne garder que la partie des lignes contenant les adjectifs avec la commande cut :

    Après conversion du fichier en utf8, l'index des adjectifs du corpus se présente ainsi.