Análise de Dados com Python: Leitura e Manipulação de Arquivos CSV

Postado Por:

Categoria:

Postado em:

Análise de Dados com Python: Leitura e Manipulação de Arquivos CSV

Aprenda a carregar e analisar arquivos CSV em Python para extrair insights de dados de forma rápida e eficiente

Arquivos CSV (Comma-Separated Values) são amplamente utilizados para armazenar e compartilhar dados tabulares de forma simples e acessível. Em Python, a biblioteca Pandas facilita a leitura e manipulação desses arquivos, permitindo que você carregue dados diretamente em um DataFrame, que é uma estrutura de dados comumente usada na análise de dados.

Neste post, abordaremos:

  • Como ler um arquivo CSV em Python usando Pandas
  • Manipulação e análise básica de dados com DataFrames
  • Exercícios práticos para consolidar o aprendizado

Para facilitar, vamos utilizar um arquivo CSV de exemplo com dados fictícios de vendas de uma empresa.

Baixe aqui o arquivo CSV de exemplo.


Configurando o Ambiente

Para acompanhar este guia, você precisa ter o Python instalado em sua máquina e a biblioteca Pandas. Caso ainda não tenha o Pandas, instale-o com o comando:

pip install pandas

Carregando o Arquivo CSV

Primeiro, vamos importar o Pandas e carregar o arquivo CSV em um DataFrame. Suponha que o arquivo foi baixado e salvo na mesma pasta onde o script Python será executado.

import pandas as pd

# Carregando o arquivo CSV
df = pd.read_csv('base_vendas.csv')

# Exibindo as primeiras linhas do DataFrame
print(df.head())

O método pd.read_csv() carrega o arquivo CSV em um DataFrame. Aqui, df.head() mostra as cinco primeiras linhas, permitindo uma visualização inicial dos dados.


Explorando os Dados

Após carregar o arquivo, é importante entender melhor a estrutura dos dados. Abaixo estão alguns métodos úteis para exploração inicial.

1. Verificando as Informações do DataFrame

Para ver um resumo das colunas, quantidade de dados e tipos de cada coluna, use o método info():

print(df.info())

2. Resumo Estatístico

O método describe() retorna estatísticas descritivas para colunas numéricas:

print(df.describe())

Este método fornece média, desvio padrão, valores mínimos e máximos, e outras informações que ajudam a entender a distribuição dos dados.

3. Analisando Valores Únicos e Faltantes

Para verificar se há valores nulos ou ausentes, utilize isnull().sum():

print(df.isnull().sum())

Esse código revela quantos valores estão ausentes em cada coluna, o que pode ser útil para limpar e preparar os dados para a análise.


Manipulação Básica dos Dados

Após explorar a estrutura dos dados, você pode manipular e filtrar as informações para realizar uma análise mais específica. Abaixo estão algumas operações comuns.

1. Selecionando Colunas Específicas

Você pode selecionar apenas as colunas que deseja analisar. Por exemplo:

# Selecionando colunas específicas
df_selecionado = df[['produto', 'qtd_vendida', 'preco_unitario']]
print(df_selecionado.head())

2. Filtrando Linhas com Base em Condições

Para filtrar dados que atendem a uma condição específica, como peso maior que 200, use:

df_filtrado = df[df['preco_unitario'] > 200]
print(df_filtrado)

3. Adicionando uma Nova Coluna

Suponha que você queira converter a altura de polegadas para centímetros. Crie uma nova coluna no DataFrame:

# Adicionando uma coluna de altura em centímetros
df['valor_total'] = df['qtd_vendida'] * df['preco_unitario']
print(df.head())

Visualização Simples dos Dados

Visualizar os dados pode ajudar a obter insights de forma rápida. Vamos usar o Matplotlib para criar um gráfico simples com esses dados.

Instalando o Matplotlib

Caso ainda não tenha o Matplotlib, instale com:

pip install matplotlib

Gráfico de Dispersão: Preço Unitário vs. Valor Total

Crie um gráfico para observar a relação entre preço unitário e valor total:

import matplotlib.pyplot as plt

# Gráfico de dispersão
plt.scatter(df['preco_unitario'], df['valor_total'], color='blue')
plt.xlabel('Preço Unitário')
plt.ylabel('Valor Total')
plt.title('Relação entre Preço Unitário e Valor Total')
plt.show()

Esse gráfico não ajuda muito, mas achei legal.


Exercícios Práticos

Para consolidar o aprendizado, aqui estão alguns exercícios práticos usando o arquivo CSV de exemplo.

Exercício 1: Analisar Estatísticas de Preço, Quantidade Vendida e Valor Total

  1. Calcule a quantidade e valor total médios.
  2. Identifique o valor mínimo e máximo para valor total e quantidade.
  3. Exiba as informações calculadas.

Exercício 2: Filtragem de Dados por Preço

  1. Filtre e exiba apenas os registros onde o preço é superior a R$ 2000.
  2. Calcule quantos registros atendem a esse critério.

Exercício 3: Criar um Histograma de Valor total

  1. Utilize o Matplotlib para criar um histograma da coluna de valor total  (valor_total).
  2. Ajuste o número de bins (faixas) para melhorar a visualização.

Código Básico para o Histograma:

plt.hist(df['valor_total'], bins=5, color='purple')
plt.xlabel('qtd_vendida')
plt.ylabel('Frequência')
plt.title('Distribuição de Valor Total')
plt.show()

Exercício 4: Converter Preço de BRL para USD

  1. Adicione uma nova coluna valor_usd ao DataFrame, onde o valor total seja convertido para dólar (1 USD = 5.70 BRL).
  2. Exiba as cinco primeiras linhas para verificar a nova coluna.

Exercício 5: Média de Valor por Faixa de Preço

  1. Divida os dados em três faixas de preço: abaixo de 1000, entre 1500 e 2000, e acima de 2000.
  2. Calcule a altura média para cada uma dessas faixas.

Conclusão

A leitura de arquivos CSV com Python e a biblioteca Pandas é uma habilidade essencial na análise de dados. Com Pandas, você pode carregar, manipular e analisar dados de forma rápida e eficiente. Neste post, exploramos desde a importação de dados até a criação de visualizações básicas e oferecemos exercícios práticos para ajudar a consolidar o conhecimento.

A análise de dados em Python é uma habilidade valiosa para qualquer pessoa interessada em explorar informações e descobrir padrões. Com a prática, você pode expandir suas habilidades para realizar análises ainda mais complexas.

Deixe seu comentário

Posts RELACIONADOS