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

BibliotecaObjetivo
PandasManipulação de dados
NumPyOperações numéricas
MatplotlibVisualização
SeabornGráficos estatísticos
Scikit-learnMachine 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

NomeIdadeCidade
Ana20Natal
João25Recife

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

ProblemaExemplo
Dados duplicadosRegistros repetidos
Valores ausentesCampos vazios
Tipos incorretosNúmero salvo como texto
InconsistênciaFormatos 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.


Referências