"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como realizar contagens de valores e encontrar contagens máximas para múltiplas colunas usando Pandas DataFrame GroupBy?

Como realizar contagens de valores e encontrar contagens máximas para múltiplas colunas usando Pandas DataFrame GroupBy?

Publicado em 2024-11-11
Navegar:282

How to Perform Value Counts and Find Maximum Counts for Multiple Columns Using Pandas DataFrame GroupBy?

Pandas DataFrame GroupBy Multiple Columns for Value Counts

Na manipulação de DataFrame com Pandas, agrupar dados por múltiplas colunas pode fornecer insights valiosos. Este artigo demonstra como contar observações ao agrupar por duas colunas, bem como determinar a contagem mais alta para cada agrupamento.

Dado um DataFrame com múltiplas colunas, é possível aplicar a função 'groupby' para agrupar dados com base em colunas específicas. Aqui, temos um DataFrame chamado 'df' com cinco colunas: 'col1', 'col2', 'col3', 'col4' e 'col5'.

import pandas as pd

df = pd.DataFrame([
    [1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3], 
    list('AAABBBBABCBDDD'), 
    [1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3,4.5,4.6,4.7,4.7,4.8], 
    ['x/y/z','x/y','x/y/z/n','x/u','x','x/u/v','x/y/z','x','x/u/v/b','-','x/y','x/y/z','x','x/u/v/w'],
    ['1','3','3','2','4','2','5','3','6','3','5','1','1','1']
]).T
df.columns = ['col1','col2','col3','col4','col5']

Contagem por grupos de linhas

Para contar o número de observações em cada grupo de linhas, use a função 'groupby' nas colunas desejadas e depois aplique a função 'size'.

result = df.groupby(['col5', 'col2']).size()

Isso produzirá um DataFrame com as colunas agrupadas como o índice e o tamanho como os valores.

print(result)

Determinando a contagem mais alta

Para determinar a contagem máxima para cada valor 'col2', use a função 'groupby' em 'col2' e depois aplique a função 'max' nos dados agrupados .

result = df.groupby(['col5', 'col2']).size().groupby(level=1).max()

Isso produzirá uma série com a contagem máxima para cada valor 'col2'.

print(result)

Em resumo, usar as funções 'groupby' e 'size' no Pandas permite uma eficiência análise e agregação de dados, permitindo aos usuários extrair insights sobre seus dados de diversas maneiras.

Declaração de lançamento Este artigo foi reimpresso em: 1729650500 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3