Comment compter et trier les fréquences de mots en Python à l'aide de Counter ?

Susan Sarandon
Libérer: 2024-10-21 21:37:02
original
495 Les gens l'ont consulté

How to Count and Sort Word Frequencies in Python Using Counter?

Comptage et tri des fréquences de mots dans une liste

Dans un projet récent, vous avez rencontré un problème où vous deviez compter les occurrences de mots dans une liste et les trier par fréquence, le mot apparaissant le plus fréquemment en début de liste. Même si vous aviez une idée de base de la solution, vous ne saviez pas comment l'implémenter efficacement dans Python 3.3.

Heureusement, la classe collections.Counter de Python fournit une solution simple et efficace à ce problème. Voici un exemple :

<code class="python">from collections import Counter

# Create a list of words
list1 = ['apple', 'egg', 'apple', 'banana', 'egg', 'apple']

# Use Counter to count word occurrences
counts = Counter(list1)

# Print the counts
print(counts)  # Counter({'apple': 3, 'egg': 2, 'banana': 1})</code>
Copier après la connexion

Dans cet exemple, Counter crée un objet de type dictionnaire où les clés sont des mots et les valeurs sont leurs comptes. L'instruction print génère le nombre pour chaque mot unique.

Pour trier les mots en fonction de la fréquence, vous pouvez utiliser la méthode most_common() de Counter. Cette méthode renvoie une liste de tuples, où chaque tuple contient un mot et son nombre. Par défaut, la liste est triée par ordre décroissant de fréquence, ce qui signifie que le mot le plus fréquent sera au début.

Voici comment trier la liste des mots :

<code class="python"># Sort the words based on frequency
sorted_words = [word for word, count in sorted(counts.most_common(), key=lambda x: x[1], reverse=True)]

# Print the sorted list
print(sorted_words)  # ['apple', 'egg', 'banana']</code>
Copier après la connexion

Dans ce code, trié, trie la liste des tuples par le deuxième élément (nombre) par ordre décroissant en utilisant l'argument reverse=True. Cela garantit que le mot le plus fréquent apparaît en premier dans la liste sorted_words.

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!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!