Top N mais frequentes
Em análise de dados, logs ou redes sociais, frequentemente precisamos extrair os itens mais comuns de uma coleção. Combinar um dicionário para contar frequências com a função sorted() permite resolver isso de forma direta, sem bibliotecas externas. Dominar essa combinação é essencial para manipular dados reais de forma eficiente.
O PROBLEMA
Encontre N palavras mais frequentes com dicionário e sorted.
EXEMPLO
Top 2: [('a',3), ('b',2)]SOBRE O CONCEITO
Primeiro, percorremos a lista de palavras e usamos um dicionário para contar ocorrências: freq[palavra] = freq.get(palavra, 0) + 1. Depois, convertemos o dicionário em uma lista de tuplas com items() e ordenamos pelo valor (frequência) em ordem decrescente. O erro comum é usar sorted(..., key=lambda x: x[0]), que ordena pela chave (palavra) em ordem alfabética, não pela frequência. Ou esquecer o argumento reverse=True, que resulta na ordem crescente. A forma correta é: sorted(freq.items(), key=lambda x: x[1], reverse=True)[:N]. Isso garante as N palavras mais frequentes.
RESOLUÇÃO