Domine o Excel com Python: Um Guia Prático com a Biblioteca Pandas


Você passa horas consolidando planilhas, calculando totais e gerando relatórios no Excel? Tarefas repetitivas podem consumir um tempo precioso que poderia ser usado para análises mais estratégicas. Mas e se eu te dissesse que você pode automatizar tudo isso com algumas linhas de código em Python?

Neste guia, vamos explorar a Pandas, uma das bibliotecas mais poderosas do Python para manipulação e análise de dados. Vamos pegar um problema real – consolidar e analisar relatórios de vendas de diferentes filiais – e resolvê-lo de forma rápida e eficiente. Prepare-se para levar suas habilidades com planilhas a um novo nível!

O que é a Biblioteca Pandas?

Antes de mergulharmos no código, vamos entender o que é a Pandas. Trata-se de uma biblioteca open-source para Python, projetada especificamente para análise e manipulação de dados. Ela é a ferramenta preferida de cientistas de dados e analistas por vários motivos:

  • Estrutura de Dados Poderosa: Seu principal recurso é o DataFrame, uma estrutura de dados tabular (semelhante a uma planilha do Excel) que permite manipular linhas e colunas com extrema facilidade.
  • Compatibilidade: Ela consegue ler e escrever dados de uma vasta gama de formatos, incluindo Excel (.xlsx), CSV, SQL, JSON e muitos outros.
  • Ferramentas de Análise: Oferece funções robustas para agrupar, filtrar, mesclar, limpar e analisar dados, transformando tarefas complexas em operações simples.

Em resumo, a Pandas é um “canivete suíço” para quem trabalha com dados em Python.

1. Preparando o Ambiente

Para começar, você precisa ter o Python instalado em seu computador. Com o Python instalado, podemos usar o gerenciador de pacotes pip para instalar as bibliotecas necessárias. Para este tutorial, precisaremos de duas:

  1. pandas: A nossa biblioteca principal.
  2. openpyxl: Uma dependência que a Pandas utiliza para ler e escrever arquivos no formato .xlsx do Excel.

Abra seu terminal ou prompt de comando e execute os seguintes comandos:

# Instala a biblioteca Pandas
pip install pandas

# Instala a biblioteca necessária para manipular arquivos Excel
pip install openpyxl

2. O Problema: Análise de Vendas de Múltiplas Filiais

Imagine o seguinte cenário: você é um analista de vendas e recebe relatórios de 3 filiais diferentes. Duas planilhas estão no mesmo arquivo Excel (Pasta1.xlsx) e a terceira está em um arquivo separado (Pasta2.xlsx).

Seu objetivo é:

  1. Unificar todos os dados de vendas em uma única tabela.
  2. Calcular o faturamento total de cada venda (Quantidade * Valor Unitário).
  3. Descobrir quem foi o vendedor com maior faturamento.
  4. Descobrir qual filial faturou mais.

Fazer isso manualmente seria tedioso e propenso a erros, além de que seria necessário fazer todos esses passos todos os meses por exemplo. Então vamos ver como o Python e o Pandas resolvem isso.

3. O Código: Mão na Massa!

Agora, vamos escrever o script Python para automatizar essa tarefa.

Passo 1: Importar a Biblioteca Pandas

O primeiro passo em qualquer script que usa a Pandas é importá-la. É uma convenção comum na comunidade Python dar à biblioteca o apelido de pd.

import pandas as pd

Passo 2: Ler os Arquivos Excel

Vamos ler os dados de cada filial e armazená-los em DataFrames separados. A função pd.read_excel() é perfeita para isso. Ela recebe o nome do arquivo e, opcionalmente, o nome da planilha (sheet_name).

# Lendo os dados da Pasta1.xlsx (que contém as filiais 1 e 2)
filial1 = pd.read_excel('Pasta1.xlsx', sheet_name='FILIAL1')
filial2 = pd.read_excel('Pasta1.xlsx', sheet_name='FILIAL2')

# Lendo os dados da Pasta2.xlsx (que contém a filial 3)
filial3 = pd.read_excel('Pasta2.xlsx', sheet_name='FILIAL3')

Passo 3: Calcular o Faturamento Total

Nossas planilhas têm as colunas “QTD” (Quantidade) e “V.UNIT” (Valor Unitário), mas não o valor total da venda. Podemos criar essa coluna facilmente em cada DataFrame.

# Criando a coluna 'V.TOTAL' em cada DataFrame
filial1['V.TOTAL'] = filial1['V.UNIT'] * filial1['QTD']
filial2['V.TOTAL'] = filial2['V.UNIT'] * filial2['QTD']
filial3['V.TOTAL'] = filial3['V.UNIT'] * filial3['QTD']

Passo 4: Agrupar Todos os Dados

Com os dados de cada filial prontos, vamos uni-los em um único DataFrame usando a função pd.concat().

# Concatenando (unindo) todos os DataFrames em um só
agrupamento_de_filiais = pd.concat([filial1, filial2, filial3], ignore_index=True)

# Vamos visualizar o resultado
print("Dados de todas as filiais agrupados:")
print(agrupamento_de_filiais)

O parâmetro ignore_index=True reinicia o índice da tabela final, deixando-a mais organizada.

Passo 5: Análise dos Dados – Respondendo às Perguntas

Agora que temos todos os dados em um só lugar, podemos responder às nossas perguntas de negócio usando a poderosa função groupby().

Quem foi o vendedor com maior faturamento?

# Agrupando por vendedor e somando o valor total de suas vendas
faturamento_vendedores = agrupamento_de_filiais.groupby('VENDEDOR')['V.TOTAL'].sum()

print("\nFaturamento total por vendedor:")
print(faturamento_vendedores)

Qual a filial que mais faturou?

# Agrupando por filial e somando o valor total de suas vendas
faturamento_filial = agrupamento_de_filiais.groupby('FILIAL')['V.TOTAL'].sum()

print("\nFaturamento total por filial:")
print(faturamento_filial)

O Código Completo

Aqui está o script final, juntando todos os passos:

import pandas as pd

# 1. Lendo os dados dos arquivos Excel
filial1 = pd.read_excel('Pasta1.xlsx', sheet_name='FILIAL1')
filial2 = pd.read_excel('Pasta1.xlsx', sheet_name='FILIAL2')
filial3 = pd.read_excel('Pasta2.xlsx', sheet_name='FILIAL3')

# 2. Criando a coluna 'V.TOTAL' em cada DataFrame
filial1['V.TOTAL'] = filial1['V.UNIT'] * filial1['QTD']
filial2['V.TOTAL'] = filial2['V.UNIT'] * filial2['QTD']
filial3['V.TOTAL'] = filial3['V.UNIT'] * filial3['QTD']

# 3. Concatenando todos os DataFrames
agrupamento_de_filiais = pd.concat([filial1, filial2, filial3], ignore_index=True)

# 4. Respondendo à pergunta: Quem foi o vendedor com maior faturamento?
print("--- ANÁLISE DE VENDAS ---")
faturamento_vendedores = agrupamento_de_filiais.groupby('VENDEDOR')['V.TOTAL'].sum()
print("\n# Faturamento por Vendedor:")
print(faturamento_vendedores)

# 5. Respondendo à pergunta: Qual a filial que mais faturou?
faturamento_filial = agrupamento_de_filiais.groupby('FILIAL')['V.TOTAL'].sum()
print("\n# Faturamento por Filial:")
print(faturamento_filial)

Conclusão

Com poucas linhas de código, transformamos um trabalho manual e demorado em um processo automatizado, rápido e confiável. Este é apenas um vislumbre do que a biblioteca Pandas pode fazer. A partir daqui, você pode gerar gráficos, exportar relatórios para novos arquivos Excel, enviar e-mails com os resultados e muito mais.

Ficou com alguma dúvida? Então confira o vídeo completo em nosso canal com o passo a passo:

0 0 votos
Classificação do artigo
Inscrever-se
Notificar de
guest
0 Comentários
mais antigos
mais recentes Mais votado
Feedbacks embutidos
Ver todos os comentários
Rolar para cima