Aula de Manipulação de dados em Python
Arquivos CSV
Um arquivo CSV (Comma-Separated Values) é um formato simples e muito usado para armazenar e trocar dados em forma de tabela. Nele, cada linha representa um registro e cada coluna é separada por vírgula (,
), ponto e vírgula (;
) ou outro delimitador.
✨ Principais características:
- É um arquivo de texto puro, fácil de abrir em qualquer editor ou programa.
- Pode ser lido e escrito por diversos sistemas e linguagens de programação.
- É amplamente usado para importar e exportar dados entre bancos de dados, planilhas (como Excel) e softwares.
📌 Exemplo de CSV:
nome,idade,cidade
Maria,25,São Paulo
João,30,Rio de Janeiro
Ana,22,Belo Horizonte
👉 Nesse exemplo:
- A primeira linha traz o cabeçalho (nomes das colunas).
- As linhas seguintes são os dados.
💡 Por ser simples e leve, o CSV é ideal quando precisamos de compatibilidade e portabilidade de dados, mas não traz recursos avançados como fórmulas ou formatação, presentes em arquivos de planilha.
Como criar um arquivo CSV
Entre no notepad++ e crie um novo arquivo.
Copie o seguinte conteúdo.
nome,idade,cidade
Maria,25,São Paulo
João,30,Rio de Janeiro
Ana,22,Belo Horizonte

Em seguida salve como listagem.csv

Pronto voce tem um arquivo csv válido.
Usando o Pandas

Pandas é uma biblioteca do Python muito usada para análise e manipulação de dados. Ele facilita o trabalho com tabelas, planilhas e arquivos CSV, oferecendo estruturas como DataFrame (que parece uma tabela do Excel dentro do Python).
📌 Explicação simplificada:
- O
pandas
permite ler arquivos CSV com apenas um comando. - Depois de carregado, os dados ficam em um DataFrame, onde podemos visualizar, filtrar, ordenar e até realizar cálculos.
- É uma das bibliotecas mais usadas em ciência de dados e análise de dados.
Exemplo em Python usando o listagem.csv
:
import pandas as pd
# Lê o arquivo CSV
df = pd.read_csv("listagem.csv")
# Exibe o conteúdo do arquivo
print(df)
✨ O código faz o seguinte:
- Importa o
pandas
. - Usa
pd.read_csv()
para ler o arquivo chamado listagem.csv. - Guarda os dados no DataFrame
df
. - Imprime todo o conteúdo do arquivo.
💡 Assim, você consegue transformar seu CSV em uma tabela bem estruturada para manipulação dentro do Python.
Varrendo os registros de um CSV.
Depois de carregar o CSV no Pandas, você pode percorrer os registros linha a linha usando o método iterrows()
. Assim, cada linha é lida como um índice e uma série de dados.
📌 Aqui está a continuação do programa:
import pandas as pd
# Lê o arquivo CSV
df = pd.read_csv("listagem.csv")
# Exibe todo o conteúdo do arquivo
print("Conteúdo completo do arquivo:\n")
print(df)
print("\nVarredura linha a linha:\n")
# Percorre cada linha do DataFrame
for index, row in df.iterrows():
print(f"Linha {index}: {row.to_dict()}")
✨ O que esse código faz:
- Lê o
listagem.csv
no DataFramedf
. - Mostra o conteúdo completo.
- Varre linha por linha do DataFrame.
- Para cada linha, imprime um dicionário com os nomes das colunas e os valores.
📌 Exemplo de saída (supondo o CSV com nome,idade,cidade
):
Linha 0: {'nome': 'Maria', 'idade': 25, 'cidade': 'São Paulo'}
Linha 1: {'nome': 'João', 'idade': 30, 'cidade': 'Rio de Janeiro'}
Linha 2: {'nome': 'Ana', 'idade': 22, 'cidade': 'Belo Horizonte'}
Quer que eu prepare uma versão onde, ao invés de imprimir o dicionário inteiro, já traga cada campo formatadinho, tipo:
👉 Maria - 25 anos - São Paulo
?
Verificando informações com PANDAS
Podemos deixar o programa interativo: ele pergunta ao usuário uma faixa de idade (mínimo e máximo) e depois filtra as pessoas do listagem.csv
que estão dentro desse intervalo.
Aqui está o código:
import pandas as pd
# Lê o arquivo CSV
df = pd.read_csv("listagem.csv")
# Pergunta ao usuário a faixa de idade
idade_min = int(input("Digite a idade mínima: "))
idade_max = int(input("Digite a idade máxima: "))
# Filtra os registros que estão na faixa
resultado = df[(df['idade'] >= idade_min) & (df['idade'] <= idade_max)]
# Mostra o resultado
print("\nPessoas dentro da faixa etária escolhida:\n")
if resultado.empty:
print("Nenhuma pessoa encontrada nessa faixa de idade.")
else:
for index, row in resultado.iterrows():
print(f"{row['nome']} - {row['idade']} anos - {row['cidade']}")
✨ O que acontece aqui:
- Lê o CSV no DataFrame.
- Pede ao usuário a idade mínima e máxima.
- Usa um filtro lógico para selecionar apenas quem está entre os dois valores.
- Mostra o resultado de forma organizada.
📌 Exemplo de saída:
Digite a idade mínima: 20
Digite a idade máxima: 25
Pessoas dentro da faixa etária escolhida:
Maria - 25 anos - São Paulo
Ana - 22 anos - Belo Horizonte
Outras funcionalidades do pandas
O Pandas é super poderoso e tem muitas funcionalidades além de só ler e filtrar CSV. Vou te mostrar algumas das mais usadas com exemplos práticos:
📌 1. Mostrar só algumas linhas
print(df.head()) # primeiras 5 linhas
print(df.tail()) # últimas 5 linhas
📌 2. Ver informações rápidas do DataFrame
print(df.info()) # mostra colunas, tipos e nulos
print(df.describe()) # estatísticas (média, desvio, min, max, etc.)
📌 3. Selecionar colunas específicas
print(df['nome']) # apenas a coluna "nome"
print(df[['nome', 'idade']]) # duas colunas
📌 4. Filtrar com condições
# Pessoas acima de 25 anos
print(df[df['idade'] > 25])
# Pessoas da cidade "São Paulo"
print(df[df['cidade'] == "São Paulo"])
📌 5. Ordenar registros
print(df.sort_values(by="idade")) # do mais novo para o mais velho
print(df.sort_values(by="idade", ascending=False)) # do mais velho para o mais novo
📌 6. Agrupar dados
# Média de idade por cidade
print(df.groupby("cidade")["idade"].mean())
📌 7. Contar ocorrências
# Quantas pessoas por cidade
print(df["cidade"].value_counts())
📌 8. Criar ou modificar colunas
# Criar coluna com idade em meses
df["idade_meses"] = df["idade"] * 12
print(df)
📌 9. Exportar resultados
# Salvar em outro CSV
df.to_csv("resultado.csv", index=False)
✨ Ou seja, o Pandas serve não só para ler arquivos CSV, mas também para explorar, analisar e transformar dados de forma rápida e prática.
Buscar dados e analise dos dados.
Existem locais que se pode buscar dados abertos, em geral. O governo fornece diversas bases de dados para que seja utilizada por alunos e profissionais a fim de analise de dados.
https://arquivos.receitafederal.gov.br/dados/cnpj/dados_abertos_cnpj/2025-08
Se olharmos estes dados podemos verificar o cnae de diversos produtos.
0111301″;”Cultivo de arroz”
“0111302”;”Cultivo de milho”
“0111303”;”Cultivo de trigo”
“0111399”;”Cultivo de outros cereais não especificados anteriormente”
“0112101”;”Cultivo de algodão herbáceo”
“0112102”;”Cultivo de juta”
“0112199”;”Cultivo de outras fibras de lavoura temporária não especificadas anteriormente”
“0113000”;”Cultivo de cana-de-açúcar”
“0114800”;”Cultivo de fumo”
“0115600”;”Cultivo de soja”
“0116401”;”Cultivo de amendoim”
“0116402”;”Cultivo de girassol”
“0116403”;”Cultivo de mamona”
“0116499”;”Cultivo de outras oleaginosas de lavoura temporária não especificadas anteriormente”
“0119901”;”Cultivo de abacaxi”
“0119902”;”Cultivo de alho”
“0119903”;”Cultivo de batata-inglesa”
“0119904”;”Cultivo de cebola”
“0119905”;”Cultivo de feijão”
O CNAE significa Classificação Nacional de Atividades Econômicas.
📌 Ele é um padrão oficial no Brasil criado pelo IBGE e utilizado pela Receita Federal, juntas comerciais, prefeituras e outros órgãos para identificar e categorizar a atividade econômica de empresas e profissionais.
✨ Principais pontos:
- Cada atividade econômica tem um código numérico único (exemplo: comércio de roupas, consultoria em TI, fabricação de móveis etc.).
- É usado em cadastros fiscais (como o CNPJ) e em registros de empresas.
- Serve para padronizar estatísticas e informações econômicas em nível nacional.
- Impacta diretamente em tributos e enquadramento fiscal (pois a atividade define impostos e obrigações).
📌 Exemplo de código CNAE:
- 62.01-5/01 → Desenvolvimento de programas de computador sob encomenda.
- 47.54-7/01 → Comércio varejista de móveis.
Ou seja, o CNAE funciona como um RG da atividade da empresa, identificando exatamente o que ela faz.
Tarefa.
Buscar atividades relacionadas que contem a palavra açaí.
Desenvolva um programa que pega a lista de CNAI e dado uma palavra busca todos os que tiverem aquela palavra.