Maneiras de encontrar os elementos mais comuns de uma lista em Python

Najwa Riyaz 30 janeiro 2023
  1. Use most_common() de Counter para encontrar os elementos mais comuns de uma lista em Python
  2. Use a função max() de FreqDist() para encontrar os elementos mais comuns de uma lista em Python
  3. Use a função unique() de NumPy para encontrar os elementos mais comuns de uma lista em Python
Maneiras de encontrar os elementos mais comuns de uma lista em Python

Este artigo menciona várias maneiras de encontrar os elementos mais comuns de uma lista em Python. A seguir estão as funções que podemos usar para encontrar os elementos de lista mais comuns em Python.

  • Use a função most_common() de Counter.
  • Use a função max() de FreqDist().
  • Use a função unique() de NumPy.

Use most_common() de Counter para encontrar os elementos mais comuns de uma lista em Python

Em Python 2.7+, use o comando Counter() para encontrar os elementos de lista mais comuns em Python. Para isso, você precisa importar a classe Counter da biblioteca padrão das collections.

Um Counter é uma coleção onde os elementos são armazenados como chaves de dicionário e as contagens da chave são armazenadas como valores de dicionário. O exemplo abaixo ilustra isso.

from collections import Counter

list_of_words = ["Cars", "Cats", "Flowers", "Cats", "Cats", "Cats"]

c = Counter(list_of_words)
c.most_common(1)
print("", c.most_common(1))

Aqui, o primeiro elemento é determinado usando a função most_common() como most_common(1).

Produção:

[("Cats", 4)]

Use a função max() de FreqDist() para encontrar os elementos mais comuns de uma lista em Python

Você também pode usar o comando max() de FreqDist() para encontrar os elementos de lista mais comuns em Python. Para isso, você importa primeiro a biblioteca nltk. O exemplo abaixo demonstra isso.

import nltk

list_of_words = ["Cars", "Cats", "Flowers", "Cats"]
frequency_distribution = nltk.FreqDist(list_of_words)
print("The Frequency distribution is -", frequency_distribution)
most_common_element = frequency_distribution.max()
print("The most common element is -", most_common_element)

Aqui, a lista de distribuição de frequência é primeiro construída usando a função FreqDist() e, em seguida, o elemento mais comum é determinado usando a função max().

Produção:

The Frequency distribution is - <FreqDist with 3 samples and 4 outcomes>
The most common element is - Cats

Use a função unique() de NumPy para encontrar os elementos mais comuns de uma lista em Python

Por último, você pode usar a função unique() da biblioteca NumPy para encontrar os elementos mais comuns de uma lista em Python. O exemplo a seguir abaixo ilustra isso.

import numpy

list_of_words = [
    "Cars",
    "Cats",
    "Flowers",
    "Cats",
    "Horses",
    "",
    "Horses",
    "Horses",
    "Horses",
]
fdist = dict(zip(*numpy.unique(list_of_words, return_counts=True)))
print("The elements with their counts are -", fdist)
print("The most common word is -", list(fdist)[-1])

A saída dessa operação é um dicionário de pares de valores-chave, onde o valor é a contagem de uma palavra específica. Use a função unique() para encontrar os elementos únicos de um array. Em seguida, o comando zip() é usado para mapear o índice semelhante de vários contêineres. Neste exemplo, nós o usamos para obter a distribuição de frequência. Como a saída lista os pares de valores-chave em ordem crescente, o elemento mais comum é determinado pelo último elemento.

Produção:

The elements with their counts are - {'': 1, 'Cars': 1, 'Cats': 2, 'Flowers': 1, 'Horses': 4}
The most common word is - Horses

Artigo relacionado - Python List