Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Diferença entre crosstab e pivot_table

Boa noite. Você poderia fornecer uma explicação comparativa entre as funções crosstab e pivot_table ? Pois pelo que entendi as duas tem a mesma finalidade, ou estou errado ? Muito Obrigado!

1 resposta
solução!

Oi, tudo bem?

Essa é uma dúvida bem comum, e fico feliz que você esteja explorando ferramentas como crosstab() e pivot_table() no Pandas. Ambas servem para resumir dados, mas têm propósitos diferentes. Vamos ver o conceito de cada uma e depois um exemplo prático para ficar bem claro.

crosstab(): contagem de frequências

A função crosstab() cria uma tabela de contingência, ou seja, conta quantas vezes cada combinação de valores aparece. É ideal para análises categóricas simples.

pivot_table(): resumo de valores numéricos

Já a função pivot_table() é mais flexível e permite fazer cálculos como média, soma, contagem etc., com base em colunas numéricas. Serve para análises mais completas.

Exemplo

Vamos supor este DataFrame:

import pandas as pd

df = pd.DataFrame({
    'Sexo': ['F', 'M', 'F', 'M', 'F', 'M'],
    'Curso': ['Engenharia', 'Engenharia', 'Medicina', 'Medicina', 'Engenharia', 'Medicina'],
    'Nota': [8, 7, 9, 6, 5, 8]
})

Usando crosstab():

pd.crosstab(df['Sexo'], df['Curso'])

Resultado:

CursoEngenhariaMedicina
F21
M12

Aqui estamos contando quantas pessoas de cada sexo estão em cada curso.


Usando pivot_table():

pd.pivot_table(df, index='Sexo', columns='Curso', values='Nota', aggfunc='mean')

Resultado:

CursoEngenhariaMedicina
F6.59.0
M7.07.0

Aqui estamos calculando a média das notas por sexo e curso.

Resumo

  • crosstab(): para contar quantas vezes algo aparece.
  • pivot_table(): para calcular médias, somas e outros agregados com dados numéricos.

Espero ter ajudado.

Qualquer dúvida que surgir, compartilhe no fórum.

Abraços e bons estudos!

Ícone de sugestão Para saber mais:

Abaixo compartilho as documentações para você mergulhar ainda mais sobre o tema:

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!