Use o código e tenha 10% de desconto!

Pandas Python Data Wrangling para Ciência de Dados

Eduardo Corrêa

*Você terá acesso às futuras atualizações do livro.

Prefácio

Ciência de dados (data science) é um processo que emprega técnicas estatísticas e computacionais para analisar grandes bases de dados, procurando extrair delas conhecimento útil para empresas, instituições científicas, governos e demais organizações.

Tipicamente, os projetos de ciência de dados são divididos em quatro macroetapas de execução. A primeira consiste simplesmente na definição do problema que será resolvido (por exemplo, criar um sistema para caracterizar o perfil dos clientes de uma empresa). A segunda é a etapa de pré-processamento, onde as bases de dados relevantes (base de vendas, base de clientes etc.) devem ser reunidas e adequadamente formatadas. Na terceira etapa, um algoritmo é aplicado sobre os dados pré-processados, com o objetivo de extrair um modelo estatístico ou de Machine Learning. Este modelo tem por objetivo identificar padrões de relacionamento entre os itens de dados (por exemplo, o algoritmo pode gerar um modelo que revela as características mais comuns dos compradores de cada produto). Por fim, na quarta etapa, os especialistas da empresa avaliam os resultados gerados pelo modelo, procurando determinar a relevância e validade deles.

De acordo com a literatura, a etapa de pré-processamento de dados (segunda etapa) costuma ser a mais trabalhosa em qualquer projeto relacionado à ciência de dados, ocupando tipicamente 80% do tempo consumido. É nesta fase que são realizadas as tarefas de seleção, limpeza e transformação dos dados que serão utilizados pelo algoritmo de Machine Learning / Estatística. O objetivo da seleção de dados é coletar e reunir todos os dados que sejam relevantes para a resolução do problema de ciência de dados definido (por exemplo, combinar dados dos sistemas corporativos da empresa com dados disponibilizados na internet). Limpeza, significa eliminar sujeira e informações irrelevantes. Por fim, transformação consiste em converter os dados de origem para um outro formato, mais adequado para ser usado pelo algoritmo. As atividades de seleção, limpeza e transformação de dados são comumente referenciadas como atividades de Data Wrangling, Data Munging ou Data Preparation.

A biblioteca pandas (Python Data Analysis Library) foi especialmente projetada para oferecer o suporte ao processo de Data Wrangling. Trata-se de um software livre, do tipo open source, que ao longo dos últimos anos se consolidou como a biblioteca para ciência de dados mais utilizada no ambiente Python. As funcionalidades oferecidas pela pandas consistem basicamente em uma combinação de técnicas eficientes para processamento de vetores e matrizes, com um conjunto de funções específicas para a manipulação de dados tabulares, que se assemelham muito às oferecidas pelo Excel e pela famosa linguagem SQL. Alguns exemplos:

* Importar, de forma direta e padronizada, dados estruturados de diferentes tipos de fontes, tais como: arquivos texto (CSV, JSON etc.), bancos de dados e planilhas eletrônicas.

* Combinar de forma inteligente registros provenientes de diferentes bases de dados (operação conhecida como merge ou join);

* Produzir resultados agregados e tabulações (group by);

* Limpar e transformar bases de dados (ex.: aplicação de filtros sobre linhas e colunas de tabelas, ordenação e ranqueamento dos dados, tratamento de dados ausentes etc.).

* Produzir diferentes tipos de gráficos a partir de dados armazenados em colunas de tabelas.

Qual o objetivo deste livro?

Este livro aborda a pandas sob uma perspectiva profissional, explicando como utilizá-la para resolver problemas práticos e, muitas vezes, difíceis de Data Wrangling. O livro combina a teoria com um projeto prático, que envolve o uso da pandas como ferramenta para viabilizar a execução das atividades de seleção, estudo, limpeza e transformação de uma base de dados real que contém informações detalhadas sobre diversos países (variando desde a população e extensão de cada país até as características de suas bandeiras, entre outras informações). O projeto mostrará o passo a passo para realizar o pré-processamento desta base de dados, que será então utilizada como fonte para a criação de um modelo de Machine Learning, mais especificamente, um modelo de classificação de dados.

Público-alvo

* Estudantes e profissionais envolvidos com ciência de dados (independente da área ou nível de experiência);

* Usuários do Excel que pretendem migrar para o Python;

* Pessoas com conhecimento de SQL que pretendem trabalhar com Python.

Sumário

  • 1 Muito prazer, biblioteca pandas
    • 1.1 O que é ciência de dados?
    • 1.2 Quais os problemas resolvidos pela ciência de dados?
    • 1.3 Como funciona a ciência de dados na prática?
    • 1.4 E onde entra a pandas nessa história?
    • 1.5 Projeto prático — apresentação
  • 2 A estrutura de dados Series
    • 2.1 Como criar Series?
    • 2.2 Técnicas para consulta e modificação de dados
    • 2.3 Computação vetorizada
    • 2.4 Índices datetime
    • 2.5 Indexação hierárquica
    • 2.6 Projeto prático — mais detalhes
  • 3 A estrutura de dados DataFrame
    • 3.1 Como criar DataFrames?
    • 3.2 Técnicas para consulta e modificação de dados
    • 3.3 Trabalhando com arquivos
    • 3.4 Projeto prático — importação e filtragem do dataset flags
  • 4 Conhecendo os seus dados
    • 4.1 Tipos de atributos
    • 4.2 Estatísticas básicas
    • 4.3 Ranqueamento e ordenação
    • 4.4 Produzindo tabulações
    • 4.5 Gráficos
    • 4.6 Detecção de outliers
    • 4.7 Projeto prático — estudando o dataset flags
  • 5 Combinando DataFrames
    • 5.1 Concatenação
    • 5.2 Operações de conjunto
    • 5.3 Junção
    • 5.4 Projeto prático — combinando os datasets flags e countries
  • 6 Transformação e limpeza de DataFrames
    • 6.1 Seleção e projeção
    • 6.2 Modificação de dados
    • 6.3 Funções aplicadas sobre colunas
    • 6.4 Discretização
    • 6.5 Normalização
    • 6.6 Projeto prático — transformando o dataset flags
  • 7 Um pouco de Machine Learning
    • 7.1 O que é classificação?
    • 7.2 Como criar um classificador?
    • 7.3 Como avaliar um classificador?
    • 7.4 Biblioteca scikit-learn
    • 7.5 Projeto prático — classificador multirrótulo

Dados do produto

Número de páginas:
223
ISBN:
978-85-7254-048-3
Data publicação:
01/2020

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter

*Você terá acesso às futuras atualizações do livro.