Para ler um arquivo CSV usando Pandas em Python, a função principal é read_csv(). Essa função é extremamente flexível e permite ajustar vários parâmetros para atender a necessidades específicas, como encoding, delimitadores e manipulação de tipos de dados. Vamos focar na leitura de um CSV com codificação UTF-8, que é uma das codificações mais comuns.
Como Ler um CSV com Pandas Utilizando UTF-8
Abaixo estão exemplos práticos para você adicionar ao seu blog técnico sobre como usar read_csv() para ler um CSV com codificação UTF-8 e outras funcionalidades que você pode explorar.
1. Leitura Básica de um CSV UTF-8
Para ler um arquivo CSV com codificação UTF-8, você pode simplesmente usar a função read_csv(). Por padrão, o Pandas usa UTF-8 como encoding, mas é uma boa prática especificar isso explicitamente para garantir a compatibilidade.
import pandas as pd
# Lendo um arquivo CSV com encoding UTF-8
df = pd.read_csv('seu_arquivo.csv', encoding='utf-8')
print(df.head()) # Exibe as primeiras linhas do DataFrame
2. Lidando com Delimitadores Diferentes
Muitos CSVs usam delimitadores diferentes, como ponto e vírgula ; em vez de vírgula ,. É possível especificar o delimitador correto usando o parâmetro sep.
# Lendo um CSV com delimitador de ponto e vírgula
df = pd.read_csv('seu_arquivo.csv', encoding='utf-8', sep=';')
print(df.head())
3. Tratando Cabeçalhos e Colunas
Caso o CSV não tenha cabeçalho, ou se você quiser definir quais colunas usar, utilize os parâmetros header e usecols.
# Lendo um CSV sem cabeçalho e especificando colunas
df = pd.read_csv('seu_arquivo.csv', encoding='utf-8', header=None, usecols=[0, 1, 2])
print(df.head())
4. Lendo Apenas Algumas Linhas do CSV
Se o arquivo CSV for muito grande, você pode usar nrows para ler apenas as primeiras linhas, ou chunksize para processar o arquivo em partes menores.
# Lendo apenas as 10 primeiras linhas
df = pd.read_csv('seu_arquivo.csv', encoding='utf-8', nrows=10)
print(df)
# Lendo o arquivo em chunks de 1000 linhas
for chunk in pd.read_csv('seu_arquivo.csv', encoding='utf-8', chunksize=1000):
print(chunk.head()) # Processa e exibe as primeiras linhas de cada chunk
5. Tratando Valores Nulos e Dados Faltantes
Pandas permite definir como tratar valores ausentes, substituindo strings específicas por NaN usando o parâmetro na_values.
# Lendo o CSV e definindo valores nulos
df = pd.read_csv('seu_arquivo.csv', encoding='utf-8', na_values=['NA', 'N/A', 'Missing'])
print(df.info()) # Exibe informações sobre o DataFrame, incluindo valores nulos
Boas Práticas ao Ler CSVs com Pandas
- Verifique a Codificação: Sempre especifique a codificação (
encoding) para evitar problemas com caracteres especiais. - Teste com Amostras: Ao lidar com arquivos grandes, use
nrowspara carregar amostras e testar seu código antes de processar todo o arquivo. - Use
chunksizepara Gravar em Partes: Para arquivos muito grandes,chunksizeajuda a gerenciar a memória eficientemente ao processar dados em partes.
Conclusão
Ler arquivos CSV com Pandas é uma tarefa simples, mas com muitos ajustes que podem ser feitos para otimizar o carregamento dos dados, tratamento de valores ausentes e a gestão de memória. As opções de encoding, delimitadores e tratamento de cabeçalhos tornam o read_csv() uma das ferramentas mais poderosas para manipulação de dados em Python.

Leave a comment