1. Introdução ao Agrupamento de Dados
Princípio do Agrupamento de Dados
Na vida real, a gente frequentemente agrupa objetos por algumas características: livros com livros, legumes com legumes, pessoas com pessoas (você entendeu, né?). Na programação, funciona do mesmo jeito. Agrupar dados permite dividir uma grande quantidade de informações em partes menores e mais manejáveis para depois analisá-las.
No pandas, usamos o método groupby
para isso, e
ele permite dividir os dados em grupos e realizar várias
operações em cada um deles. Por exemplo, dá pra agrupar
vendas por departamentos de uma loja e calcular a receita
total em cada um deles.
Olha só um exemplo de como isso pode ser feito:
import pandas as pd
# Criando um DataFrame com dados de vendas
data = {'Departamento': ['Alimentos', 'Tecnologia', 'Alimentos', 'Livros', 'Tecnologia'],
'Receita': [100, 200, 150, 50, 300]}
df = pd.DataFrame(data)
# Agrupando os dados por departamentos e calculando a receita total
grupo = df.groupby('Departamento')['Receita'].sum()
print(grupo)
Exemplos de uso do Agrupamento
Agrupar é especialmente útil quando você quer comparar dados entre diferentes categorias. Por exemplo, se você trabalha em RH e quer saber o salário médio nos departamentos da empresa, ou se é um marqueteiro e tá curioso sobre qual mês teve mais vendas para cada produto. Essas tarefas ficam bem mais fáceis com o agrupamento no pandas.
2. Cálculo de Funções Agregadas
Introdução às Funções Agregadas
Funções agregadas são funções especiais que você aplica a um
grupo de dados e retorna um único valor. As mais comuns são
sum
(soma), mean
(média) e
count
(quantidade de elementos). Elas ajudam a
transformar uma quantidade muito grande de dados em métricas
mais simples e fáceis de entender.
Usando Funções Agregadas
A gente já viu como calcular a soma no exemplo anterior. Agora vamos dar uma olhadinha em como calcular a média e a quantidade de vendas em cada departamento.
# Calculando a receita média por departamento
media = df.groupby('Departamento')['Receita'].mean()
print(media)
# Calculando a quantidade de vendas por departamento
quantidade = df.groupby('Departamento')['Receita'].count()
print(quantidade)
Exemplos de Cálculo de Agregados
Suponha que você tenha dados de visitas ao site e queira saber
quantas pessoas, em média, acessam o site em cada dia da
semana. Essa é uma tarefa clássica para usar agrupamento e a
função mean
.
data = {'Dia': ['Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Qua', 'Ter'],
'Visitas': [120, 150, 170, 160, 180, 300, 220]}
df = pd.DataFrame(data)
# Calculando a média de visitas por dia
visitas_medias = df.groupby('Dia')['Visitas'].mean()
print(visitas_medias)
3. Prática
Exercício de Agrupamento e Cálculo de Agregados
Imagine que você tem um conjunto de dados sobre vendas. A tarefa: agrupar por categorias e calcular as vendas totais, o preço médio do pedido e a quantidade de pedidos em cada categoria. Isso vai te ajudar a entender quais categorias de produtos trazem mais lucro e onde estão as possíveis "minas de ouro".
data = {
'Categoria': ['Eletrônicos', 'Roupas', 'Eletrônicos', 'Livros', 'Livros', 'Roupas'],
'Valor_Pedido': [250, 100, 150, 200, 500, 300]
}
df = pd.DataFrame(data)
# Calculando as vendas totais por categoria
soma = df.groupby('Categoria')['Valor_Pedido'].sum()
print(soma)
# Calculando o preço médio do pedido por categoria
preco_medio = df.groupby('Categoria')['Valor_Pedido'].mean()
print(preco_medio)
# Calculando a quantidade de pedidos por categoria
quantidade_pedidos = df.groupby('Categoria')['Valor_Pedido'].count()
print(quantidade_pedidos)
Analisando os Resultados do Agrupamento
Depois de concluir o exercício de agrupamento e cálculo de agregados, é muito útil analisar os dados obtidos. Você pode perceber, por exemplo, que a categoria "Livros" tem o maior valor total de pedidos graças a um pedido grande, mas único. Ou que "Roupas" têm o maior número de pedidos, mas o preço médio é menor do que "Eletrônicos".
Esse tipo de análise pode ajudar a tomar decisões de negócio mais fundamentadas, como focar em aumentar o tamanho médio do pedido na categoria que tem mais pedidos, mas menor preço médio.
4. Erros e Especificidades
Quando você trabalha com agrupamento, um dos erros mais
comuns é esquecer de usar parênteses ao aplicar funções
agregadas. Por exemplo, escrever
df.groupby('Categoria').sum()
em vez de
df.groupby('Categoria')['Valor_Pedido'].sum()
.
Além disso, às vezes surgem problemas com valores ausentes
nos dados. O Pandas tem métodos práticos para lidar com isso,
como o fillna()
, que substitui valores ausentes
por outros que você definir, evitando distorções nos cálculos.
Além disso, certifica-se de que os tipos de dados estão corretos. Às vezes, colunas com números podem ser lidas como strings, e ao tentar agregar esses dados, erros podem acontecer.
Se você quiser se aprofundar em como o pandas funciona e nos métodos de agrupamento, dê uma olhada na documentação oficial do pandas para estudar com mais detalhes e exemplos.
GO TO FULL VERSION