Séance 9 : Antidictionnaire Flashcards
Qu’est-ce qu’un anti-dictionnaire?
Une liste d’exclusion dans laquelle on place les mots qu’on veut exclure d’un document (souvent les mots outils : les dét, certaines prep, certains adverbes)
Quand peut être utile un anti-dictionnaire?
Lorsqu’on souhaite exclure certains mots d’un traitement :
Par exemple, lorsqu’on veut observer le vocabulaire d’un texte
Ou lorsqu’on veut identifier les mots prépondérants d’un texte
Quelle est la forme d’un A-D?
Un mot par ligne
Trié en ordre alphabétique
Comment on l’utilise? Pourquoi ainsi?
- On le place dans la colonne clés d’un TA (et on place 1 dans valeur) . Parce qu’ainsi c’est plus rapide (directement vs la liste au complet)
- Au fur et à mesure qu’on identifie les mots d’un texte, en vue d’un traitement, on vérifie leur présence dans le tableau associatif afin de décider si on les conserve (si ils sont absents, ils nous intéressent)
- On place les mots qui nous intéressent dans index qu’après on trie en ordre inverse des fréquences et cela donne les mots prépondérants (plus précis que juste avec un D)
=>itération sur identificateur de fichier car AD ligne par ligne
Programme complet
import re
from collections import defaultdict
A = open('antidictionnaire.txt','r') AD = {} for L in A: AD[L.rstrip()] = 1 A.close()
texte = open('UnTexte.txt','r').read() Mots = re.split('\W+',texte)
IND = defaultdict(int)
for mot in Mots:
if (mot.lower() not in AD) and (not mot.isdigit()):
IND[mot.lower()] += 1
clefs = sorted(IND,key=IND.__getitem__,reverse=True)
for m in clefs[:100]:
print(m,IND[m])