Introdução ao Pandas em Python: Manipulação de Dados – Leitura de CSV, Filtros e Agrupamentos

A manipulação de dados é uma das tarefas mais importantes para quem trabalha com análise de dadosciência de dados ou automação. No Python, a biblioteca mais utilizada para isso é o Pandas.

Com o Pandas, você pode:
✔ Ler e escrever arquivos em diversos formatos (CSVExcelJSONSQL).
✔ Selecionar e filtrar linhas e colunas de forma simples.
✔ Agrupar informações e calcular estatísticas rapidamente.
✔ Trabalhar com dados estruturados como se estivesse usando uma planilha avançada.

Neste artigo, vamos criar exemplos práticos em Python para mostrar como usar o Pandas em três cenários principais:

  1. Leitura de arquivos CSV.

  2. Filtros e seleção de dados.

  3. Agrupamentos e cálculos estatísticos.


1. Instalando e importando o Pandas

Antes de tudo, é necessário instalar o Pandas (se ainda não estiver instalado):

pip install pandas

E depois importá-lo no seu código:

import pandas as pd

2. Criando ou lendo um DataFrame

Um DataFrame é a estrutura principal do Pandas – pense nele como uma tabela, semelhante ao Excel.

Vamos criar um CSV de exemplo com informações de alunos:

Arquivo alunos.csv

nome,idade,curso,nota
Ana,21,Engenharia,8.5
Carlos,19,Direito,7.2
Maria,22,Computação,9.1
João,20,Matemática,6.8
Beatriz,23,Engenharia,8.0

Agora, vamos carregar esse CSV no Pandas:

# Lendo o arquivo CSV
df = pd.read_csv("alunos.csv")

# Exibindo o DataFrame completo
print("=== DataFrame carregado ===")
print(df)

Saída esperada:

      nome  idade       curso  nota
0      Ana     21  Engenharia   8.5
1   Carlos     19     Direito   7.2
2    Maria     22  Computação   9.1
3     João     20  Matemática   6.8
4  Beatriz     23  Engenharia   8.0

3. Explorando os dados

O Pandas traz funções úteis para entender a estrutura do DataFrame:

print("\n=== Primeiras linhas ===")
print(df.head())

print("\n=== Últimas linhas ===")
print(df.tail())

print("\n=== Informações gerais ===")
print(df.info())

print("\n=== Estatísticas descritivas ===")
print(df.describe())

📊 O comando df.describe() gera estatísticas úteis, como média, desvio padrão, valores mínimos e máximos.


4. Selecionando colunas e linhas

Você pode acessar colunas específicas como se fossem dicionários:

print("\n=== Apenas a coluna nome ===")
print(df["nome"])

print("\n=== Nome e Nota ===")
print(df[["nome", "nota"]])

Para acessar linhas, temos:

print("\n=== Primeira linha ===")
print(df.iloc[0])

print("\n=== Da linha 2 até a 3 ===")
print(df.iloc[2:4])

Também podemos aplicar condições (filtros):

print("\n=== Alunos com nota maior que 8 ===")
print(df[df["nota"] > 8])

print("\n=== Apenas alunos de Engenharia ===")
print(df[df["curso"] == "Engenharia"])

5. Ordenando dados

Ordenar é simples com sort_values:

print("\n=== Ordenando por nota (decrescente) ===")
print(df.sort_values(by="nota", ascending=False))

print("\n=== Ordenando por curso e depois por nota ===")
print(df.sort_values(by=["curso", "nota"]))

6. Agrupando e resumindo dados

groupby() é uma das funções mais poderosas do Pandas. Com ele, conseguimos agrupar dados e aplicar funções estatísticas.

Exemplo: média das notas por curso:

print("\n=== Média de notas por curso ===")
print(df.groupby("curso")["nota"].mean())

Saída:

curso
Computação    9.10
Direito       7.20
Engenharia    8.25
Matemática    6.80
Name: nota, dtype: float64

Podemos também calcular várias estatísticas de uma só vez:

print("\n=== Estatísticas completas por curso ===")
print(df.groupby("curso")["nota"].agg(["mean", "max", "min", "count"]))

Saída esperada:

             mean  max  min  count
curso                             
Computação   9.10  9.1  9.1      1
Direito      7.20  7.2  7.2      1
Engenharia   8.25  8.5  8.0      2
Matemática   6.80  6.8  6.8      1

7. Salvando os resultados

Depois de manipular os dados, podemos salvar em outro CSV:

df.to_csv("resultado.csv", index=False)
print("\n✅ Arquivo 'resultado.csv' criado com sucesso!")

8. Exercícios para praticar

  1. Crie um CSV com informações de vendas de produtos (produto, quantidade, valor unitário) e use o Pandas para calcular o faturamento total por produto.

  2. Filtre apenas os registros de alunos com idade maior que 20 e nota acima de 8.

  3. Ordene os dados por curso e, dentro de cada curso, pelas notas.

  4. Agrupe por curso e descubra quantos alunos existem em cada um.

  5. Exporte os resultados para Excel (.xlsx) usando:

    df.to_excel("resultado.xlsx", index=False)
    

Conclusão

O Pandas é uma biblioteca essencial para qualquer programador ou analista que precise manipular dados.

Neste artigo, você aprendeu:
✔ Como ler arquivos CSV.
✔ Como selecionar, filtrar e ordenar dados.
✔ Como agrupar informações e calcular estatísticas.
✔ Como salvar os resultados novamente em CSV ou Excel.

Esse é apenas o começo: o Pandas também permite tratar valores nulosmesclar tabelastrabalhar com datas e até integrar com bibliotecas de visualização para criar gráficos diretamente dos dados.

Comentários

Postagens mais visitadas deste blog

Laços de Repetição em Python: Conceitos e Exemplos Práticos

Manipulação de Arquivos no C#: Como Ler, Escrever e Trabalhar com Arquivos de Forma Simples

Como Instalar o Xamarin com C#: Passo a Passo Completo