Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1198 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  Etudiante en lettre recherche aide pour devoir !!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Etudiante en lettre recherche aide pour devoir !!

n°1850581
marine_etu​diante
Posté le 12-02-2009 à 21:39:04  profilanswer
 

[#2a00d4]Bonjour tout le monde,
 
Ma prof d'info nous a donné 2 exercices en cours mais j'ai quelques difficultés pour le faire. Je prends tous conseils, toute aide de ceux qui pourront m aider...
 
Merci d'avance Marine :)
[/#b80046]
 
[#2a00d4]Voila mes exercices :[/#b80046]
 
 
Ex 1. Algorithme du SOUNDEX:
L’algorithme du Soundex est une méthode qui permet de traduire un nom en code phonétique et de regrouper les
noms qui ont de légères variantes orthographiques (étaient mal épellés), ex. Kup`s`c, Kup´sc, Kupsc, Kupcs, Kupesc,
Kupsec ont le même code (K120) pour la prononciation anglaise. Cette méthode est utilisé par les bureaux des
archives, des bibliothèques et en généalogie pour retrouver les noms qui auraient subi une transformation due à
une faute de recopie.
Ecrivez le script Python qui transforme les noms en code phonétique selon l’algorithme du Sundex (pour le
français):
-supprimer les éventuels espaces initiaux ou intérieurs
-remplacer tous les caractères accentués par leurs équivalents non accentués, par exemple, à, ä, â)a (attention
au codage!!!!)
-mettre le mot en majuscule
-garder la première lettre
-supprimer les lettres A, E, I, O, U, Y, H et W
-remplacer les lettres restantes par le chiffre associé:
* B, P=>1
* C, K, Q=>2
* D, T=>3
* L =>4
* M, N=>5
* R=>6
* G, J=>7
* X, Z, S=>8
* F, V=>9
-supprimer les chiffres répétés (garder une occurrence)
si le code obtenu contient moins de 4 éléments, compléter à droite par des zéros, e.g., K12;K120
si le code obtenu contient plus de 4 éléments, conserver les 4 éléments les plus `a gauche, e.g.: K13674 ;
K136
format du code final: Lettre Chiffre Chiffre Chiffre
Testez le script avec les mots suivants: Thibout, Thiebout, Tibout ; T130; Teullé, Teulle, Teulé, Tuelle ; T400.
Ajoutez d’autres mots à la liste dans le fichier names.txt (codage iso-8859-1) et testez le script avec les
noms introduits (lus) à partir du fichier.
Obtenez-vous toujours la bonne représentation? Avez-vous toujours le même code pour les noms qui ont la
prononciation identique? Proposez des modifications et essayez de les incorporer dans le script.
A RENDRE: le script Python qui marche, le fichier names.txt avec les noms ajoutés et les réponses aux questions.
 

 
[b]Ex 2. Troncation des mots en français (ang. stemming)

Développez un script Python qui supprime les suffixes de mots et donne comme le résultat la base morphologique
(un radical, un stem) du mot.
 
1. télécharger et installer la bibliothèque nltk de Python selon les instructions sur:
http://nltk.sourceforge.net/index.php/Installation
 
2. utilisez le module stem de la bibliothèque nltk et des expressions régulières pour développer un stemmer
de verbes franc¸ais:
lancez le script simple.py distribué avec le devoir
ajoutez d’autres suffixes verbaux au motif patterns:
patterns = "ais?$|ez$"
$ indique la fin de la chaïne (du mot), donc ez$ signifie la terminaison (suffixe) ez du mot
ATTENTION: la méthode stem supprime l’affixe (pas de remplacement!)
testez le script avec les formes du verbe parler: parler, parlai, parlais, parlait, parlez, parlions, parlons,
parlaient, parlent, . . .
modifiez le script pour appliquer la troncation aux mots les plus fréquents (>15) dans le fichier
french.txt ci-joint, codage iso-8859-1 (établissez automatiquement, i.e., en Python, la liste
de mots les plus fréquents ; cours 7, S1); pour couper le texte en mots (tokenisation), soit utilisez
votre m´ethode du devoir 6 (S1), soit la m´ethode WordTokenizer du module nltk.tokenize:
from nltk.tokenize import WordTokenizer # importer la methode
tokenizer = WordTokenizer() # variable pour tokenisation
line = "_Je vous dedie ce livre, qui est pour ainsi votre oeuvre. Il y a"
words = tokenizer.tokenize(line) # liste de mots
Analysez les résultats. Obtenez-vous toujours de bonnes formes? Quels problèmes avez-vous rencontré?
 
3. consultez l’algorithme de troncation basé sur des heuristiques (Porter stemmer), la version pour le franc¸ais,
disponible sur le site: http://snowball.tartarus.org/algor [...] emmer.html
(texte en anglais!)
Utilisez-le pour améliorer la troncation des verbes et/ou pour ajouter la troncation des autres formes. Pour
remplacer l’affixe avec un autre ou ajouter un, utilisez par exemple la méthode re.sub (du module re,
cours 2, S2) ou bien replace (la m´ethode de l’objet string, cours 6, S1).
 
A RENDRE: le script simple.py modifié (changer le nom du fichier pour qu’il contienne votre nom, e.g.,
stemmer-kupsc.py), les réponses par rapport à l’analyse des résultats et modifications proposées.
 

mood
Publicité
Posté le 12-02-2009 à 21:39:04  profilanswer
 

n°1850586
suizokukan
Posté le 12-02-2009 à 21:44:33  profilanswer
 

Je me permets de répondre à la place d'un modérateur : 1) on est pas là pour faire les devoirs 2) fais péter un bout de code pour qu'on t'aide.
 
Respecteusement.


---------------
rule #1 : trust the python
n°1850590
skeye
Posté le 12-02-2009 à 21:50:28  profilanswer
 

étudiante en lettres ça m'étonnerait, en plus :D


---------------
Can't buy what I want because it's free -
n°1850642
Anonymouse
Posté le 13-02-2009 à 03:35:02  profilanswer
 

skeye a écrit :

étudiante en lettres ça m'étonnerait, en plus :D


 
 
 [:aloy]


Message édité par Anonymouse le 13-02-2009 à 03:35:37
n°1850644
Zedlefou
In cabbage we trust !
Posté le 13-02-2009 à 04:04:40  profilanswer
 

Tres beau foutage de gueule ! J'avoue qu'elle est forte celle la ...  
http://www.plumedepresse.com/archives/olivierbonnet.canalblog.com/images/coupe_du_monde_troph_e.JPG


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
n°1850648
Elmoricq
Modérateur
Posté le 13-02-2009 à 06:32:21  profilanswer
 

Hors charte. Merci de lire les règles de la catégorie Programmation.
 
Je ferme ce sujet.


Aller à :
  FORUM HardWare.fr
  Programmation
  Python

  Etudiante en lettre recherche aide pour devoir !!

 

Sujets relatifs
Webdev Déploiement (recherche)[Gesion de projets] Recherche de logiciel gratuit
Recherche de la litérature sur la conception d'un modèle de donnéesPré-remplir un envoi de mail avec mailto
Recherche Horde IMP discretBesoin d'aide pour mon prog en C#
Demande aide pour choisir un ForumCreer sur la meme page un formulaire de recherche fixe et les resul
[Access] Besoin d'aide avec les fonctions de date dans Access.Développement ou recherche de plugin Firefox
Plus de sujets relatifs à : Etudiante en lettre recherche aide pour devoir !!


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR