Calcul du nombre d'homographes dans un texte

Fermé
salyn92 Messages postés 4 Date d'inscription samedi 26 mai 2018 Statut Membre Dernière intervention 26 mai 2018 - Modifié le 26 mai 2018 à 18:38
yg_be Messages postés 23242 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 4 octobre 2024 - 26 mai 2018 à 20:50
Bonjour,

je travaille sur un corpus arabe et je souhaite calculer le nombre des mots homographes qui existent dans celui-ci, sachant qu'en langue arabe les voyelles sont des signes diacritiques et c'est eux qui font la différence à l'oral pour la voyellisation (homographes hétérophones, ex: شَعْرٌ/شِعْرٌ la différence est sur la première lettre avec le signe diacritique qui est placé soit au dessus ou en dessous).
je veux savoir s'il existe une fonction qui compare les éléments d'une liste qu'on peut paramétrer et qui nous renverrai ces homographes, puis calculer leur nombre dans le corpus entier.

ps: je sais que c'est trop compliqué, mais toute suggestion ou piste sera la bienvenue.
Merci d'avance :)

1 réponse

yg_be Messages postés 23242 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 4 octobre 2024 Ambassadeur 1 541
26 mai 2018 à 18:20
bonjour, quelle est la partie de ton travail qui te pose problème?
as-tu commencé ton travail?
0
salyn92 Messages postés 4 Date d'inscription samedi 26 mai 2018 Statut Membre Dernière intervention 26 mai 2018
26 mai 2018 à 18:44
oui je l'ai commencé en nettoyant le corpus, découpant en token mais pour la suite je bloque carrément :

#!/usr/local/bin/python3.6
import re

tab = []
propTab = []


with open("test.txt", mode = "r", encoding = "utf8") as f:
for line in f:
tab.append(line.rstrip())
for ligne in tab:
res = ligne.split(" ")
propTab.append(res)
print(propTab)

je veux comparer tous éléments et trouver les éléments qui ont la même graphie et différenciés seulement par les diacritiques.
voilà tout !
merci.
0
yg_be Messages postés 23242 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 4 octobre 2024 1 541 > salyn92 Messages postés 4 Date d'inscription samedi 26 mai 2018 Statut Membre Dernière intervention 26 mai 2018
26 mai 2018 à 19:01
je pense que la première chose à faire est d'écrire une fonction qui renvoie un mot après avoir supprimé toutes les diacritiques du mot.
0
salyn92 Messages postés 4 Date d'inscription samedi 26 mai 2018 Statut Membre Dernière intervention 26 mai 2018 > yg_be Messages postés 23242 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 4 octobre 2024
26 mai 2018 à 19:21
si je supprime les diacritiques il n'y aura plus de trait distinctif entre un mot et son homographe, je tomberai après sur des mots similaires graphiquement et phonétiquement (système phonétique de l'arabe est basé sur ces diacritiques) d'où la nécessité de les comparer tels qu'ils sont
0
yg_be Messages postés 23242 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 4 octobre 2024 1 541 > salyn92 Messages postés 4 Date d'inscription samedi 26 mai 2018 Statut Membre Dernière intervention 26 mai 2018
26 mai 2018 à 20:28
si tu veux les comparer tels qu'ils sont, quel est ton soucis?
0
salyn92 Messages postés 4 Date d'inscription samedi 26 mai 2018 Statut Membre Dernière intervention 26 mai 2018 > yg_be Messages postés 23242 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 4 octobre 2024
26 mai 2018 à 20:37
mon souci est dans la question de départ yg_be, à savoir : est qu'il y a une fonction qui permet de comparer les éléments d'une liste et laquelle on peut paramétrer en même temps selon les caractéristiques des éléments de la liste??
0