Análise de dados se tornou uma das áreas mais importantes da computação moderna.
Atualmente, empresas e aplicações utilizam dados para:
- identificar padrões;
- gerar relatórios;
- automatizar decisões;
- construir modelos de machine learning;
- monitorar sistemas;
- apoiar análises de negócio.
Neste tutorial vamos explorar conceitos fundamentais de análise de dados utilizando Python.
O objetivo é compreender:
- leitura de datasets;
- manipulação de dados;
- limpeza;
- transformação;
- visualização;
- análise exploratória.
Por que Python é tão usado em dados?
Python possui um ecossistema extremamente forte para análise de dados.
Algumas das principais vantagens são:
- simplicidade;
- produtividade;
- grande quantidade de bibliotecas;
- integração com machine learning;
- visualização de dados.
Bibliotecas principais
| Biblioteca | Objetivo |
|---|---|
| Pandas | Manipulação de dados |
| NumPy | Operações numéricas |
| Matplotlib | Visualização |
| Seaborn | Gráficos estatísticos |
| Scikit-learn | Machine learning |
Instalando as bibliotecas
Comando
pip install pandas matplotlib seaborn numpy
O que é um dataset?
Datasets representam conjuntos de dados organizados.
Eles podem estar em formatos como:
- CSV;
- JSON;
- Excel;
- bancos de dados.
Fluxo básico da análise de dados
flowchart LR
Dados[Dataset]
Limpeza[Limpeza]
Transformacao[Transformacao]
Analise[Analise]
Visualizacao[Visualizacao]
Dados --> Limpeza
Limpeza --> Transformacao
Transformacao --> Analise
Analise --> Visualizacao
Lendo arquivos CSV
Uma das operações mais comuns é carregar arquivos CSV.
Exemplo
import pandas as pd
_df = pd.read_csv('dados.csv')
Estrutura do DataFrame
O Pandas trabalha principalmente com DataFrames.
Um DataFrame funciona como uma tabela.
Exemplo conceitual
| Nome | Idade | Cidade |
|---|---|---|
| Ana | 20 | Natal |
| João | 25 | Recife |
Visualizando dados
Primeiras linhas
_df.head()
Últimas linhas
_df.tail()
Informações gerais
_df.info()
Essa função ajuda a identificar:
- quantidade de linhas;
- tipos de dados;
- valores nulos.
Estatísticas básicas
_df.describe()
Selecionando colunas
Exemplo
_df['idade']
Filtrando dados
Uma das operações mais importantes é filtrar informações.
Exemplo
_df[_df['idade'] > 18]
Fluxo de filtragem
flowchart LR
Dataset[Dataset]
Condicao[Condicao]
Resultado[Resultado]
Dataset --> Condicao
Condicao --> Resultado
Valores nulos
Datasets reais frequentemente possuem dados ausentes.
Verificando valores nulos
_df.isnull().sum()
Removendo valores nulos
_df.dropna()
Substituindo valores
_df.fillna(0)
Limpeza de dados
Grande parte da análise de dados envolve limpeza.
Problemas comuns
| Problema | Exemplo |
|---|---|
| Dados duplicados | Registros repetidos |
| Valores ausentes | Campos vazios |
| Tipos incorretos | Número salvo como texto |
| Inconsistência | Formatos diferentes |
Removendo duplicatas
_df.drop_duplicates()
Conversão de tipos
_df['idade'] = _df['idade'].astype(int)
Agrupamento de dados
Agrupamentos ajudam a gerar análises estatísticas.
Exemplo
_df.groupby('cidade').mean()
Fluxo de agrupamento
flowchart TD
Dados[Dados]
Agrupamento[Agrupamento]
Estatisticas[Estatisticas]
Dados --> Agrupamento
Agrupamento --> Estatisticas
Ordenando dados
_df.sort_values(by='idade')
Visualização de dados
Visualização é uma das partes mais importantes da análise.
Gráficos ajudam a identificar:
- padrões;
- tendências;
- anomalias.
Criando gráficos
Exemplo com Matplotlib
import matplotlib.pyplot as plt
plt.plot([1,2,3],[4,5,6])
plt.show()
Gráfico de barras
_df['cidade'].value_counts().plot(kind='bar')
Fluxo da visualização
flowchart LR
Dados[Dados]
Analise[Analise]
Grafico[Grafico]
Insights[Insights]
Dados --> Analise
Analise --> Grafico
Grafico --> Insights
Análise exploratória de dados
EDA (Exploratory Data Analysis) é o processo de explorar dados antes da modelagem.
Ela ajuda a:
- entender padrões;
- detectar problemas;
- gerar hipóteses.
Pipeline de análise exploratória
flowchart TD
Dataset[Dataset]
Limpeza[Limpeza]
Exploracao[Exploracao]
Visualizacao[Visualizacao]
Insights[Insights]
Dataset --> Limpeza
Limpeza --> Exploracao
Exploracao --> Visualizacao
Visualizacao --> Insights
Trabalhando com múltiplos arquivos
Em projetos reais, normalmente trabalhamos com vários datasets.
Exemplo
pd.concat([df1, df2])
Salvando resultados
Depois da análise, podemos exportar os dados.
Exemplo
_df.to_csv('resultado.csv')
Jupyter Notebook
Jupyter Notebook é bastante utilizado em análise de dados.
Ele permite:
- executar código em blocos;
- visualizar gráficos;
- documentar análises.
Instalando Jupyter
pip install notebook
Executando
jupyter notebook
Possíveis aplicações
Análise de dados possui aplicações em:
- negócios;
- finanças;
- ciência;
- saúde;
- monitoramento;
- machine learning.
Conceitos importantes aprendidos
Projetos de análise de dados ajudam bastante no aprendizado de:
- manipulação de datasets;
- estatística;
- visualização;
- automação;
- pipelines de dados.
Possíveis evoluções
Depois da análise básica, várias evoluções podem ser adicionadas.
Exemplos
- dashboards;
- machine learning;
- automação;
- pipelines ETL;
- integração com APIs;
- bancos de dados.
Conclusão
Análise de dados é uma das áreas mais importantes da tecnologia moderna.
Mesmo projetos simples ajudam bastante no aprendizado de:
- limpeza de dados;
- transformação;
- visualização;
- exploração estatística.
Além disso, Python e Pandas tornaram o ecossistema de análise extremamente acessível.
Com o crescimento do volume de dados no mundo, compreender análise de dados se tornou uma habilidade cada vez mais relevante.