Maison > Article > développement back-end > Comment compter et trier les mots selon leur fréquence en Python ?
Compter et trier les mots par fréquence
Compter la fréquence des mots dans une liste donnée est une tâche courante en programmation. Pour trier la liste des mots uniques en fonction de leurs fréquences, on peut exploiter la classe Counter de Python.
Nous commençons par importer la classe Counter depuis le module collections :
<code class="python">from collections import Counter</code>
Considérons l'exemple suivant :
<code class="python">list1=['apple','egg','apple','banana','egg','apple']</code>
Pour compter la fréquence de chaque mot, nous instancions un objet Counter avec la liste de mots :
<code class="python">counts = Counter(list1)</code>
L'objet Counter résultant, compte, fournit un type de dictionnaire interface où les clés sont les mots uniques et les valeurs sont leurs fréquences :
<code class="python">print(counts) # Counter({'apple': 3, 'egg': 2, 'banana': 1})</code>
Pour trier les mots uniques en fonction de leurs fréquences, nous pouvons exploiter la méthode most_common() de l'objet Counter :
<code class="python">sorted_counts = counts.most_common()</code>
La méthode most_common() renvoie une liste de tuples, où chaque tuple est constitué d'un mot et de sa fréquence. Nous pouvons trier cette liste par ordre décroissant en fonction des fréquences :
<code class="python">sorted_counts.sort(key=lambda x: x[1], reverse=True)</code>
La liste sorted_counts résultante contiendra désormais les mots uniques triés par ordre décroissant de leurs fréquences.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!