Buscar

Mineração de Dados Unidade I

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 37 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

ANA LUIZA CERCHIARI 
DE ANDRADE 
AUTORIA
MINERAÇÃO 
DE DADOS
Mineração de dados - Unidade1.indd 1 08/07/19 16:35
© Ser Educacional 2019
Rua Treze de Maio, nº 254, Santo Amaro 
Recife-PE – CEP 50100-160
*Todos os gráficos, tabelas e esquemas são creditados à autoria, salvo quando indicada a referência.
Informamos que é de inteira responsabilidade da autoria a emissão de conceitos. 
Nenhuma parte desta publicação poderá ser reproduzida por qualquer meio ou forma sem autorização. 
A violação dos direitos autorais é crime estabelecido pela Lei n.º 9.610/98 e punido pelo artigo 184 do Código Penal.
Imagens de ícones/capa: © Shutterstock
Presidente do Conselho de Administração 
Diretor-presidente
Diretoria Executiva de Ensino
Diretoria Executiva de Serviços Corporativos
Diretoria de Ensino a Distância
Autoria
Projeto Gráfico e Capa
Janguiê Diniz
Jânyo Diniz 
Adriano Azevedo
Joaldo Diniz
Enzo Moreira
Profa. Ana Luiza Cerchiari de Andrade
DP Content
DADOS DO FORNECEDOR
Análise de Qualidade, Edição de Texto, Design Instrucional, 
Edição de Arte, Diagramação, Design Gráfico e Revisão.
Mineração de dados - Unidade1.indd 2 08/07/19 16:35
Boxes
CURIOSIDADE
Informação que revela algo desconhecido e interessante sobre o assunto tratado.
ASSISTA
Indicação de filmes, vídeos ou similares que trazem informações complementares ou 
aprofundadas sobre o conteúdo estudado.
DICA
Um detalhe específico da informação, um breve conselho, um alerta, uma informação 
privilegiada sobre o conteúdo trabalhado.
CITANDO
Dados essenciais e pertinentes sobre a vida de uma determinada pessoa relevante para 
o estudo do conteúdo abordado.
CONTEXTUALIZANDO
Dados que retratam onde e quando aconteceu determinado fato; demonstra-se a situação 
histórica do assunto.
EXPLICANDO
Explicação, elucidação sobre uma palavra ou expressão específica da área de 
conhecimento trabalhada.
EXEMPLIFICANDO
Informação que retrata de forma objetiva determinado assunto.
MINERAÇÃO DE DADOS 3
Mineração de dados - Unidade1.indd 3 08/07/19 16:35
Unidade 1 - Introdução e aplicações de Mineração de Dados
Objetivos da unidade ............................................................................................................................12
Técnicas e tarefas de Mineração de Dados ....................................................................................13
Dados, informação e conhecimento .............................................................................................13
Filtros em Excel ................................................................................................................................14
Filtros em SQL ...................................................................................................................................17
Exemplos de aplicações ......................................................................................................................22
Várias formas de aplicação ...........................................................................................................23
Data warehouse ...............................................................................................................................24
Exibindo dashboards no Excel .......................................................................................................26
Processo de descoberta de conhecimento em bases de dados ..................................................31
O que é KDD? ....................................................................................................................................32
Macroetapas do KDD ......................................................................................................................32
Sintetizando ............................................................................................................................................36
Referências bibliográficas ..................................................................................................................37
Sumário
MINERAÇÃO DE DADOS 4
Mineração de dados - Unidade1.indd 4 08/07/19 16:35
Sumário
Unidade 2 - Pré-processamento de dados e classificações
Objetivos da unidade ............................................................................................................................39
Pré-processamento de dados .............................................................................................................40
Limpeza de dados ............................................................................................................................43
Integração de dados .......................................................................................................................45
Transformação de dados, redução e discretização ........................................................................47
Transformação ................................................................................................................................47
Redução .............................................................................................................................................50
Discretização ....................................................................................................................................52
Regras de associação: cálculo de suporte, de confiança e de Lift ............................................55
Cálculo de suporte ..........................................................................................................................56
Cálculo de confiança .......................................................................................................................58
Cálculo de Lift ...................................................................................................................................60
Tipos de regras de associação e algoritmos ...................................................................................61
Algoritmo Apriori ..............................................................................................................................61
Algoritmo Partition ...........................................................................................................................65
Sintetizando ............................................................................................................................................67
Referências bibliográficas ..................................................................................................................68
MINERAÇÃO DE DADOS 5
Mineração de dados - Unidade1.indd 5 08/07/19 16:35
Sumário
Unidade 3 - Classificação, regressão e agrupamento
Objetivos da unidade ............................................................................................................................70
Classificações........................................................................................................................................71
Classificação por árvore de decisão ............................................................................................71
Classificação por regressão linear ...............................................................................................75
Classificação por regressão linear múltipla ................................................................................78
Clusterização e sumarização ..............................................................................................................80
Clusterização pelo Weka ................................................................................................................81
Análises temporais e desvio-padrão ............................................................................................82
Outros métodos de classificação .......................................................................................................84Classificação bayesiana .................................................................................................................85
Classificação por vizinho mais próximo .......................................................................................86
K-Means ............................................................................................................................................89
Sintetizando ............................................................................................................................................93
Referências bibliográficas ..................................................................................................................94
MINERAÇÃO DE DADOS 6
Mineração de dados - Unidade1.indd 6 08/07/19 16:35
Sumário
Unidade 4 - Ferramentas práticas em Data Mining e Data Science
Objetivos da unidade ............................................................................................................................96
Utilização da linguagem Python na prática .....................................................................................97
Variáveis, type, len e conceitos iniciais .......................................................................................98
Tuplas, listas e sets ........................................................................................................................102
Conjuntos, dicionários e funções ................................................................................................104
Condicionais – if else e for ...........................................................................................................104
Datasets e NumPy ...............................................................................................................................105
Array e Slicing Array .....................................................................................................................108
Importar textos, ler CSV e manipular datasets .........................................................................110
Utilizando a biblioteca Matplotlib em Python ...............................................................................117
Visualizar gráficos com plot .........................................................................................................117
Title, legend, show e grid ..............................................................................................................119
Markers ...........................................................................................................................................120
Font size, color ................................................................................................................................121
Utilizando a biblioteca Pandas em Python .....................................................................................122
Índices, séries e quadros de dados ............................................................................................122
Datasets com Python, CSV e Excel .............................................................................................124
Manipulação de dados, agrupamento, junção e pivots ..........................................................125
Visualizações de gráficos .............................................................................................................127
Sintetizando ..........................................................................................................................................130
Referências bibliográficas ................................................................................................................131
MINERAÇÃO DE DADOS 7
Mineração de dados - Unidade1.indd 7 08/07/19 16:35
MINERAÇÃO DE DADOS 8
Mineração de dados - Unidade1.indd 8 08/07/19 16:35
Este material foi criado para dirigir a Mineração de Dados e utilizará diversas ferramentas. A 
ferramenta SQL vai ser usada para criar e fi ltrar tabelas através dos comandos create e select, 
e posteriormente será mostrado como exportar seleções para Excel. 
O programa Excel, com sua riqueza, possui fi ltros, gráfi cos, tabelas dinâmicas e extensões 
add-in, as quais serão utilizadas para selecionar dados. Em pré-processamento de dados, será 
mostrado como fazer limpeza de dados ruidosos, ausentes e outliers, além disso, será mostra-
do como reduzir dados a intervalos e substituir dados faltantes. 
Conceitos de cálculo de suporte, que é a repetição de dados ou conjuntos em tabelas, serão 
mostrados e explicados de forma teórica e prática através do Weka. Conceitos de cálculo de 
confi ança serão explicados para mostrar a relação de compras combinadas (se o cliente leva 
um produto, ela leva outro?). E, para analisar a veracidade dos cálculos de suporte e confi ança, 
será mostrado como fazer o cálculo de Lift. 
O algoritmo a priori será apresentado e, no fi nal, será mostrado como fazer em Python. 
Conceitos de classifi cação com vizinhos mais próximos (KNN), com árvore de decisão e com 
classifi cadores bayesianos, serão explicados tanto na teoria quanto na prática. Além de classi-
fi cação, o conceito de clusterização será visto de maneira aplicada. 
Com o objetivo de passar programação voltada à mineração, será explicado como mexer 
em Python e nas suas bibliotecas Matplotlib, Pandas e NumPy, mostrando como fazer fi ltros, 
misturas (mergê), visualizações (plot), importações de arquivos (com extensões .csv, .xlsx, 
.data e .txt) e algumas classifi cações.
Apresentação
MINERAÇÃO DE DADOS 9
Mineração de dados - Unidade1.indd 9 08/07/19 16:35
Este trabalho é dedicado aos programadores em SQL, aos estudantes de Excel 
avançado e às pessoas que trabalham com dados diariamente, através de 
recursos lógicos e visuais. É dedicado, também, para pessoas que trabalham 
com decisões e estatística e, por fi m, para pessoas que pretendem mudar o 
rumo de uma empresa no sentido positivo. 
A Professora Ana Luiza Cerchiari de Andrade 
é mestre em Estudos Analíticos de Dados em 
Engenharia e Tecnologia de Energia pela Univer-
sidad Europea del Atlántico – Espanha (2017). 
Possui especialização em Análise Estatística 
para Auditorias de Ambientes e Sistemas pela 
Universidade Estácio de Sá (2016), formação 
específi ca em Redes pela Impacta (2018) e em 
Cisco pelo Senac (2018). Possui formação conti-
nuada em Sql, PHP, jQuery, DataScience, Html5 
e CSS3 pela 4Linux (2017). Tem graduação em 
TI pela Universidade Anhembi Morumbi (2006). 
Ministrou aulas em Planejamento Estratégico 
(2011) e aulas de Tecnologia da Informação e 
Gestão (2013). Foi professora de linguagens de 
programação para aplicativos e sites, de redes 
e de administração (2013) e trabalhou com de-
senvolvimento de sites e sistemas tanto em em-
presas como para empresas (2011-2018). 
Currículo Lattes:
http://buscatextual.cnpq.br/buscatextual/vi-
sualizacv.do?id=K4321448H1
A autora
MINERAÇÃO DE DADOS 10
Mineração de dados - Unidade1.indd 10 08/07/19 16:35
INTRODUÇÃO E 
APLICAÇÕES DE 
MINERAÇÃO DE 
DADOS
1
UNIDADE
Mineração de dados - Unidade1.indd 11 08/07/19 16:36
Objetivos da unidade
Tópicos de estudo
 Compreender funcionamentos de SQL;
 Compreender filtros e gráficos em Excel;
 Introdução à mineração com teorias introdutórias;
 Conhecer conceitos de data warehouse.
 Técnicas e tarefas de Mineração de 
Dados
 Dados, informação e conhecimento
 Filtros em Excel
 Filtros em SQL
 Exemplos de aplicações
 Várias formas de aplicação
 Data warehouse
 Exibindo dashboards no Excel
 Processo de descoberta de conheci-
mento em bases de dados
 O que é KDD?
 Macroetapas do KDD
MINERAÇÃO DE DADOS 12
Mineração de dados - Unidade1.indd 12 08/07/19 16:36
Técnicas e tarefas de Mineração de Dados
A quantidade de dados que são registrados é gigante. A todo instante ocorrem registros 
em autoatendimento, aplicaçõesde mapas, celulares, sensores, redes sociais, ligações e 
conversas digitais que deixam informações em todos os lugares. A programação auxilia, 
como será visto, na captação de dados, criação de fi ltros e automatização de respostas.
Dados, informação e conhecimento
Existe uma diferença elementar entre dados, informação e conhecimento. Dados são infor-
mações recolhidas e não analisadas, como exemplo tem-se os valores das compras de natal. 
Costumam ser coletados por aplicativos, notas fi scais, registros e são demonstrações de fatos 
desprovidos de análise. De acordo com Castro (2011, p. 15), “Na estatística, dado é referenciado 
como toda informação recolhida de maneira sistemática [...] na Informática, designam-se da-
dos como elementos de partida que servem de base para tratamento”. Informação são dados 
analisados, como os descontos habituais no mês de dezembro e o crescimento. Conhecimen-
to é o estudo e a refl exão em cima do que se sabe, por exemplo, o retorno de campanhas de 
marketing impresso.
Figura 1. Diferenças entre dados, informação e conhecimento. Fonte: GOLDSHIMDIT et al., 2015, p. 2.
Conhecimento
Informação
Dado
Se a capacidade mensal de endividamento > 60%
Então, crédito = sim
2.345,20; 463,00; 10.048,21; 284,12
Capacidade de endividamento mensal =
(Renda mensal - Despesas mensais)/Renda mensal
Renda mensal, despesa mensal
Na base da pirâmide representada na Figura 1, existem alguns dados que podem ser salá-
rios e gastos, por exemplo. A informação, nesse caso, descobre o percentual de capacidade de 
endividamento e o conhecimento decide se destina crédito ou não.
MINERAÇÃO DE DADOS 13
Mineração de dados - Unidade1.indd 13 08/07/19 16:36
Filtros em Excel
Suponha que uma empresa alimenta todos os dias um banco de dados no programa Excel. 
Para exemplifi car, um dataset foi baixado do site Portal Brasileiro De Dados Abertos. A Fig. 2 
mostra o dataset baixado em formato .xlsx e aberto no Excel. 
Figura 2. Dados sobre pagamentos relacionados a lei orçamentária em Excel. Fonte: SOUZA, 2019.
Esse conjunto de dados possui mais itens abaixo e, como se pode notar, possui pagamentos 
até novembro e até dezembro de 2019. Assim como o governo, as empresas podem fazer tabelas 
com dados registrando operações cotidianas. A Fig. 3 mostra o passo a passo para fazer fi ltros. 
No exemplo a seguir, as colunas dos meses de setembro e outubro foram removidas.
A tabela foi 
selecionada.
MINERAÇÃO DE DADOS 14
Mineração de dados - Unidade1.indd 14 08/07/19 16:36
Para fazer o filtro, basta clicar em dados, 
filtro e escolher o tipo de filtro.
Pode-se filtrar textos, conforme exemplo.
Quando existem datas, pode-se filtrar 
por período, antes de, depois de, e etc.
Figura 3. Filtros em Excel. 
Cabe citar que os filtros se acumulam conforme o usuário os criam. A Fig. 4 mostra um ban-
co de dados de compras.
Figura 4. Registro de compras de uma loja. 
MINERAÇÃO DE DADOS 15
Mineração de dados - Unidade1.indd 15 08/07/19 16:37
Figura 5. Filtros duplos em dados. 
A Fig. 5 mostra a tabela com filtro por compra e por data. Pode-se a qualquer momento lim-
par tanto o filtro de cada coluna quanto o filtro geral. Nota-se que restaram apenas três linhas 
com data maior que 12/10/2019 e valor acima de R$ 30,00.
MINERAÇÃO DE DADOS 16
Mineração de dados - Unidade1.indd 16 08/07/19 16:38
Filtros em SQL 
Dados são armazenados, na grande maioria das vezes, em databases (bases ou bancos 
de dados) em SQL. Neste momento, será passado uma introdução sobre SQL, para poste-
riormente nos aprofundarmos. Neste exemplo, será usada a linguagem MySQL e o progra-
ma Workbench MySQL.
Obviamente, existem diversas formas de fazer fi ltros em Excel e até formas de programar 
fi ltros em macros e VBA (linguagem de programação em Excel). Todavia, o objetivo aqui foi tra-
zer o conceito de mineração mais próximo da realidade. E, no presente trabalho, será passado 
também diversas formas de fazer fi ltros com SQL e Python.
ASSISTA
Para ver o procedimento de instalação de MySQL e Xampp, assista ao vídeo Como 
instalar MySQL e Xampp, contido nas referências bibliográfi cas. Aumente a resolução 
(qualidade) do vídeo no botão de confi gurações do player do YouTube, no canto inferior 
direito, se necessário. 
Após instalar o Workbench, deve-se abrir e ativar o Xampp (ativar MySQL e Apache) e então 
deve-se abrir o Workbench, conforme Fig. 6.
MINERAÇÃO DE DADOS 17
Mineração de dados - Unidade1.indd 17 08/07/19 16:38
Figura 6. Abertura de Xampp e Workbench MySQL.
Figura 7. Criando uma conexão.
Tendo aberto o Workbench, deve-se criar uma conexão; a Fig. 7 mostra uma conexão cha-
mada “produtos”.
Após abrir o Workbench, alguns comandos serão digitados e a função de cada um encontra-
-se na Tabela 1. A demonstração de como fazer está na Fig. 8.
MINERAÇÃO DE DADOS 18
Mineração de dados - Unidade1.indd 18 08/07/19 16:39
ASSISTA
Para ver o procedimento de criação e seleção de tabelas, assista ao vídeo Primeiros 
Passos com MySQL, contido nas referências bibliográfi cas. Aumente a resolução 
(qualidade) do vídeo no botão de confi gurações do player do YouTube, no canto inferior 
direito, se necessário.
TABELA 1. COMANDOS E UTILIDADES MYSQL
Comandos Utilidades
create database empresax; Cria o banco de dados para a em-presa.
use database empresax; Ativa o banco de dados para uso.
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
date);
Cria a tabela vendas_computadores 
com código, nome, preço e data da 
venda.
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
Insere na tabela vendas_computa-
dores três computadores e seus 
dados.
select * from vendas_computadores. Seleciona e exibe todos (*) os dados da tabela vendas_computadores.
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
create database empresax;
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
create database empresax;
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
create database empresax;
use database empresax;
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
create database empresax;
use database empresax;
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
create database empresax;
use database empresax;
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
create database empresax;
use database empresax;
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
create database empresax;
use database empresax;
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
use database empresax;
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2),data_da_vendas 
date);
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
use database empresax;
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
date);
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
create table vendas_computadores 
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
Cria o banco de dados para a em-
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
insert into vendas_computadores values
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
Cria o banco de dados para a em-
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
Cria o banco de dados para a em-
Ativa o banco de dados para uso.
(codigo int, nome varchar(50), preco fl oat (6,2), data_da_vendas 
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
Cria o banco de dados para a em-
Ativa o banco de dados para uso.
Cria a tabela 
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
(3, ‘Ultrabook LG I5’, 3800.00 , ‘2019-02-13’);
select * from vendas_computadores.
Cria o banco de dados para a em-
presa.
Ativa o banco de dados para uso.
Cria a tabela 
com código, nome, preço e data da 
(1, ‘Positivo All in One Processador I3 ‘, 2000.00 , ‘2019-02-10’),
(2, ‘Samsung All in One Processador I5’, 3500.00 , ‘2019-02-12’),
Cria o banco de dados para a em-
presa.
Ativa o banco de dados para uso.
Cria a tabela 
com código, nome, preço e data da 
Cria o banco de dados para a em-
Ativa o banco de dados para uso.
vendas_computadores
com código, nome, preço e data da 
Insere na tabela 
Cria o banco de dados para a em-
Ativa o banco de dados para uso.
vendas_computadores
com código, nome, preço e data da 
Insere na tabela 
dores
Cria o banco de dados para a em-
Ativa o banco de dados para uso.
vendas_computadores
com código, nome, preço e data da 
venda.
Insere na tabela 
dores três computadores e seus 
Seleciona e exibe todos (*) os dados 
Ativa o banco de dados para uso.
vendas_computadores
com código, nome, preço e data da 
venda.
Insere na tabela 
 três computadores e seus 
Seleciona e exibe todos (*) os dados 
da tabela 
Ativa o banco de dados para uso.
vendas_computadores
com código, nome, preço e data da 
vendas_computa-
 três computadores e seus 
Seleciona e exibe todos (*) os dados 
da tabela 
vendas_computadores
com código, nome, preço e data da 
vendas_computa-
 três computadores e seus 
dados.
Seleciona e exibe todos (*) os dados 
da tabela 
vendas_computadores
com código, nome, preço e data da 
vendas_computa-
 três computadores e seus 
dados.
Seleciona e exibe todos (*) os dados 
vendas_computadores
vendas_computa-
 três computadores e seus 
Seleciona e exibe todos (*) os dados 
vendas_computadores
vendas_computa-
 três computadores e seus 
Seleciona e exibe todos (*) os dados 
vendas_computadores
Seleciona e exibe todos (*) os dados 
vendas_computadores
Seleciona e exibe todos (*) os dados 
vendas_computadores
Seleciona e exibe todos (*) os dados 
vendas_computadores
Após copiar cada linha, deve-se selecionar a linha e apertar ctrl + enter; caso dê certo e não 
tenha erros de escrita, aparecerá um aviso na cor verde, em baixo do programa, conforme Fig. 8.
Digitar cada código, selecionar a linha 
do código e apertar ctrl + enter.
Resultado da função select * from 
vendas_computadores.
Comandos verdes indicando que os 
itens foram escritos corretamente.
Figura 8. Criando tabelas no MYSQL e inserindo dados. 
MINERAÇÃO DE DADOS 19
Mineração de dados - Unidade1.indd 19 08/07/19 16:40
Como já foi dito, na Tabela 1, o comando select * from vendas_computadores, seleciona 
todos os dados da tabela; existem, porém, alguns filtros na seleção. 
A Fig. 9 mostra como selecionar apenas nomes. 
Figura 9. Selecionar apenas nome.
A Fig. 10 mostra como selecionar nome e preço.
Figura 10. Selecionar apenas nome e preço.
A Fig. 11 mostra como selecionar todos os dados em que o preço é maior que R$ 2.100,00.
MINERAÇÃO DE DADOS 20
Mineração de dados - Unidade1.indd 20 08/07/19 16:40
Figura 11. Selecionar todos os dados onde o preço é maior que R$ 2.100,00.
Uma empresa pode ter um banco de dados com várias tabelas, por exemplo: tabela de pro-
dutos, tabela de funcionários, tabela de vendas, tabelas de compras e etc. Pode ainda ter dois ou 
mais bancos de dados e várias tabelas dentro de cada banco, por exemplo: um banco de dados 
da unidade da zona sul, um banco da zona norte e etc., e cada banco pode ter várias tabelas. 
Conforme o vídeo Primeiros Passos com MySQL e a Fig. 8, existem vários tipos de dados, int, 
varchar, date e etc. O CPF, por exemplo, se encaixaria em BIGINT. Observe os datatypes (“tipos 
de dados”) na Tabela 2. 
TABELA 2. ALGUNS TIPOS DE DADOS DE MYSQL
DATA TYPE DESCRIÇÃO
DATE Datas em formato AAAA-MM-DD. 
TIME Dias em formato hh:mm:ss.
DATETIME Data e hora AAAA-MM-DD; hh:mm:ss.
YEAR Anos.
CHAR TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
VARCHAR TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo dado (caso tenha menos letras o espaço é removido, sendo mais performático).
LONGTEXT TEXTOS - Textos muito grandes.
TINYINT NÚMEROS - varia entre -128 até 127.
SMALLINT NÚMEROS - varia entre -32.768 até 32.767.
MEDIUMINT NÚMEROS - varia entre -8.388.608 até 8.388.607.
INT NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
DATE
TIME
DATETIMEDATETIMEDATETIME
YEARYEAR
CHARCHAR
VARCHARVARCHARVARCHAR
LONGTEXT
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
LONGTEXT
TINYINT
TEXTOS - Número exatode casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
LONGTEXT
TINYINT
SMALLINT
Datas em formato AAAA-MM-DD. 
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
SMALLINT
MEDIUMINT
Datas em formato AAAA-MM-DD. 
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
SMALLINT
MEDIUMINT
Datas em formato AAAA-MM-DD. 
Dias em formato hh:mm:ss.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
MEDIUMINT
INT
Datas em formato AAAA-MM-DD. 
Dias em formato hh:mm:ss.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
Datas em formato AAAA-MM-DD. 
Dias em formato hh:mm:ss.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
Datas em formato AAAA-MM-DD. 
Dias em formato hh:mm:ss.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
Datas em formato AAAA-MM-DD. 
Dias em formato hh:mm:ss.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
Datas em formato AAAA-MM-DD. 
Dias em formato hh:mm:ss.
Data e hora AAAA-MM-DD; hh:mm:ss.
Anos.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
Datas em formato AAAA-MM-DD. 
Dias em formato hh:mm:ss.
Data e hora AAAA-MM-DD; hh:mm:ss.
Anos.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
Data e hora AAAA-MM-DD; hh:mm:ss.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
TEXTOS - Textos muito grandes.NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
NÚMEROS - varia entre -128 até 127.
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número exato de casas (caso o texto tenha menos, usa-se o mesmo espaço, 
desperdiçando espaço e deixando a tabela mais lenta caso tenha muitos dados).
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
NÚMEROS - varia entre -32.768 até 32.767.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
TEXTOS - Número variável de casas (usa só a quantidade de espaço utilizada pelo 
dado (caso tenha menos letras o espaço é removido, sendo mais performático).
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
NÚMEROS - varia entre -8.388.608 até 8.388.607.
NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.NÚMEROS - variam entre -2.147.483.648 até 2.147.483.647.
MINERAÇÃO DE DADOS 21
Mineração de dados - Unidade1.indd 21 08/07/19 16:41
DATA TYPE DESCRIÇÃO
BIGINT NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
ENUM DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
BIGINTBIGINTBIGINT
ENUM
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
NÚMEROS - variam entre -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807.
DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.DÍGITO - Utilizado para colocar uma opção ou outra, por exemplo, sexo F ou M.
A fi m de dar uma explicação prática, observe o exemplo contido na Fig. 12, com os tipos enum.
Figura 12. Exemplo de criação de enum.
Exemplos de aplicações
Existem cargos para Mineração de Dados em empresas de diversos ramos e empresas vol-
tadas apenas para Mineração de Dados, as quais trabalham para outras empresas, no busi-
ness-to-business. Consultorias em data mining, por exemplo, são especialistas em análises pre-
ditivas para auxiliar empresas a decidir quais produtos devem desenvolver, como melhorar a 
satisfação do cliente e/ou atrair clientes mais fortes.
Empresas de seguros conseguem determinar melhores valores de apólice e identifi car frau-
des, bem como desburocratizar processos de avaliação de veracidade de sinistros.
 Empresas de saúde podem melhorar processos de análises diagnósticas de saúde, podem 
criar análises em regras de associação em genética, gerar bancos de dados com informações 
químicas, físicas e biológicas para futuras pesquisas tanto para o hospital quanto para o para 
um conjunto de hospitais e podem ainda estudar comportamentos de desenvolvimento de 
doenças, relacionadas com acomodação de pacientes, entre outras aplicações. 
Na esfera da educação, existe a EDM (Educacional Data Mining), a qual avalia diversos fa-
tores relacionados a níveis de performance e aprendizado. Existe, por exemplo, uma técnica 
que reúne dados de computadores escolares de várias escolas, para através da união desses 
computadores, avaliar de forma centralizada, padrões, modos e tempos de utilização em pro-
MINERAÇÃO DE DADOS 22
Mineração de dados - Unidade1.indd 22 08/07/19 16:41
gramas e sites, também podem avaliar temas por idade, ano e curso, locais de acesso e difi cul-
dades encontradas em cada aplicação. 
Na área de aprendizado de máquina, pode-se criar automatizações após realizar estudos 
avançados de mineração (clientes com esse perfi l e esse padrão de comportamento recebem 
tal recomendação, por exemplo) e, por outro lado, criar algoritmos responsáveis por minerar, 
tanto em dados gerais, quanto em text mining, web mining, Mineração de Dados sociais e mine-
ração de mídias. 
Várias formas de aplicação
Outro tipo a ser citado é a mineração de 
padrões derelações, avaliando as infl uências 
de um conjunto de dados sobre o próprio con-
junto de dados, por exemplo, quanto maior a 
fi la, maior a procura, e quais dados infl uenciam 
mais nesse quesito de funcionamento interno, 
de círculo vicioso ou círculo virtuoso. 
Pode-se fazer minerações para avaliar pa-
drões de sequências, descobrindo quais se-
quências geram mais sucesso nas vendas, em 
desempenhos empresariais, em aprendizados 
de alunos e etc. Por exemplo, uma sequência 
de ligação, envio de e-mail e depois mensagem 
instantânea gera mais efeito do que ligação, 
mensagem instantânea e e-mail. Ou então, 
por exemplo, na EDM, gera mais efeito explica-
ção, atividade e revisão do que atividade, expli-
cação e revisão. 
Pode-se fazer mineração de infl uência 
de causa e efeito ou correlações (regressão 
linear), descobrir quais causas geram deter-
minados resultados com mais frequência, por 
exemplo, quais estímulos propiciam mais ven-
das, quais palavras deixam os clientes mais ini-
bidos, quais propagandas geram mais procura.
MINERAÇÃO DE DADOS 23
Mineração de dados - Unidade1.indd 23 08/07/19 16:41
Data warehouse
Data warehouse (DW) signifi ca depósito de grandes volumes de dados, organizados e dese-
nhados de forma a facilitar tomada de decisões. Em DW, o desenho das bases de dados ajuda 
a fazer fi ltros e a organizar informações. Os data warehouses são centros com muitos dados da 
empresa inteira, por exemplo, data marts são dados armazenados para um processo apenas 
ou para um assunto. Pode-se dizer que um data warehouse é composto por vários data marts. 
Os objetivos do DW são:
• Ver os dados que estão omissos;
• Ter acesso aos dados;
• Pedir ao sistema que mostre apenas o que é importante;
• Acesso rápido a dados para tomadas de decisões estratégicas cotidianas.
Kymball (2012) criou um diagrama para exemplifi car a estrutura do DW. 
Extração
Carga
Extração
Carga Acesso
Acesso
Recursos do 
sistema operacional
Área de 
preparação de dados
Área de 
apresentação de dados
Ferramentas de 
acesso a dados
Data mart #1
Dimencional
Dados atomicos e resumo 
com base em um único 
processo de negócios
Barramento DW:
fatos e dimensões
Data mart #2
Designação de 
similaridades em dados
Serviços:
limpeza, combinação 
e padronização
Banco de dados:
arquivos e tabelas racionais
Processamento:
ordenação e processamento
sequencial
Ferramentas de consulta
Escrita de relatórios
Aplicativos análiticos
Modelagem:
previsão
pontuação
Mineração de Dados
Extração
Figura 13. Arquitetura DW. Fonte: KIMBALL et al., 2002, p. 19
A primeira camada, chamada Recursos de Sistema Operacional (Operacional Source Systems), 
é o local de onde os dados são extraídos; geralmente, são planilhas de Excel, softwares ERP, ban-
cos de dados e tabelas em SQL ou em Access, considerada a parte externa da estrutura. 
A segunda camada, chamada Data Staging Area, é o local responsável pelo tratamento e proces-
samento dos dados (ETL), onde existem limpezas de dados, mesclas e agrupamentos de dados e 
normalizações de dados (esforço para exibir os dados de forma padronizada), tornando-os coeren-
tes. Nesta área, os usuários não podem ter acesso e pode-se usar programas de SQL. 
MINERAÇÃO DE DADOS 24
Mineração de dados - Unidade1.indd 24 08/07/19 16:41
A terceira camada, chamada Data Presentation Area, é o local onde os dados são postos 
de maneira a facilitar a leitura e a visualização dos dados, em forma de data marts, isto é, 
orientados a processos de negócios. Nesta camada, pode-se usar o programa Azure SQL 
Services. 
A quarta camada contém ferramentas de filtros e de visualização, bem como dashboards, 
gráficos e demais recursos, voltadas para visualizar com intencionalidade a área de apre-
sentação (Data Presentation Area). Nesta área, existem pontuações, previsões, ferramen-
tas de consultas e pode-se usar o programa Excel e seus dashboards e Power BI (Fig. 14). 
A Fig. 15 também exemplifica a estrutura DW.
Figura 14. Data Presentation Area com programa Power BI.
EXPLICANDO
ERP são sistemas integrados empresariais, em que empresas administram faturamen-
tos, finanças, compras, estoques e etc. Essas partes se comunicam, ou seja, faturamen-
to se comunica com estoques, estoques se comunicam com compras etc.
Extract Transform Load é um processo em que os dados são transformados e passam do 
sistema de origem para o data warehouse.
MINERAÇÃO DE DADOS 25
Mineração de dados - Unidade1.indd 25 08/07/19 16:41
Operações do fundo do sistema
METADATA
Operações da frente do sistema
Normalização
Mineração de 
Dados e 
modelos
Carregamento
Camada em tempo real
BI 
operacional Portal de BI
ETL sistemas 
e serviços
Agregamento para medir e 
mostrar desempenho
Análises de 
aplicações
ETL 
gerenciamento 
de serviços
BI 
serviços de 
gerenciamento
ETL 
banco de 
dados
BI 
banco de 
dados
Padronização
Dashboards 
e scorecards
Limpeza
Modelos dimensionais de 
processo via 
Enterprise Bus Matrix
Relatórios 
padronizadosExtração
Negócio de nível atômico
Consulta de 
acesso direto
ETL 
sistemas e 
serviços
Apresentação 
de serviços
BI 
e serviços
Figura 15. Arquitetura DW. Fonte: KIMBALL et al., 2002, p. 529.
Exibindo dashboards no Excel
Um exemplo de Data Presentation Area (“demonstração de dados”) é a criação de um 
dashboard no Excel. 
A Fig. 16 contém uma tabela com vendas de produtos em três meses. A fórmula da média 
em Excel está escrita na coluna “Média” e ao lado encontra-se a fórmula da “Situação”. Sendo a 
média maior do que 7, o produto está ideal; sendo menor, a venda está fraca. A fórmula “=MÉ-
DIA(B2:D2)” faz a média de B2, C2 e D2, e assim sucessivamente nas outras linhas. A função SE 
coloca o resultado “Ideal” para médias maiores que 7, e “Fraco” para menores. A fórmula deve se 
repetir em todos os dados. Números quebrados representam vendas com trocas ou devoluções.
Figura 16. Base de dados para dashboard.
MINERAÇÃO DE DADOS 26
Mineração de dados - Unidade1.indd 26 08/07/19 16:42
Agora, uma outra tabela foi criada com a função PROCV (procura na vertical), que irá procurar 
o produto escolhido na célula i2. Ou seja, ela buscará o produto digitado na célula i13, com o 
fundo laranja, e dará o valor das vendas de janeiro, fevereiro e etc.
A seguir, na Fig. 17, a função procv irá procurar o valor da célula em laranja (B13), na matriz 
inteira (A1 até F10), a coluna “Vendas Jan(2)”, a coluna “Vendas Fev(3)”, a coluna “Vendas Mar(4)”, a 
coluna “Média(5)”, a coluna “Situação(6)”; e o valor zero (0) significa correspondência exata. 
Figura 17. Procv e transpor valores.
Figura 18. Resultado de procv.
MINERAÇÃO DE DADOS 27
Mineração de dados - Unidade1.indd 27 08/07/19 16:42
Agora, será criada uma matriz com a função SE, na qual, caso o produto seja maior que 
7(B14>=7), aparece o próprio valor(B14); caso não seja, aparece zero(0). A finalidade é criar um 
gráfico dashboard no Excel, por isso, está sendo feito tal procedimento mais complexo. Observe 
na Fig. 17 que os operadores maior (>) e menor (<) fazem a comparação na tabela nova, e as 
linhas vão descendo (B14, B15, B16). Isto pode ser lido da seguinte forma: caso as vendas sejam 
maiores que 7, então deve-se colocar o valor das vendas; caso contrário, coloque zero. E na co-
luna da direita, caso as vendas sejam menores que 7, então deve-se colocar o valor das venda; 
caso contrário, coloque zero.
Figura 19. Criando uma matriz para valores maiores ou menores que a média com a função SE.
MINERAÇÃO DE DADOS 28
Mineração de dados - Unidade1.indd 28 08/07/19 16:42
Agora, na Fig. 20, duas médias serão demonstradas; a média do produto com referência à 
célula C17 sempre é a média geral dos produtos, a fórmula =média(B12:D10) fará a média geral 
de janeiro (B), fevereiro (C) e março (D).
Figura 20. Média do produto e dos produtos. 
Uma vez feito isso, só é necessário criar o gráfico e configurar os traços de médiapara cortar 
o gráfico. Ao mudar a célula B13 de blusas para outro produto, automaticamente muda o gráfico 
inteiro de forma dinâmica. 
MINERAÇÃO DE DADOS 29
Mineração de dados - Unidade1.indd 29 08/07/19 16:42
2. Inserir gráfico de 
coluna empilhada.
1. Selecionar.
3. Clicar com o botão direito no item referente à média.
MINERAÇÃO DE DADOS 30
Mineração de dados - Unidade1.indd 30 08/07/19 16:43
4. Mudar média do mês e média de todos os dados para o tipo linha.
Figura 21. Alterando confi gurações do gráfi co.
 Figura 22. Criando um gráfi co com linhas.
O resultado será a Fig. 22.
Processo de descoberta de conhecimento em bases 
de dados
O objetivo da Mineração de Dados é obter dados e, a partir de então, converter em conheci-
mentos para, por exemplo, fazer vendas combinadas (toda pessoa que compra caneta, compra 
MINERAÇÃO DE DADOS 31
Mineração de dados - Unidade1.indd 31 08/07/19 16:43
lápis), deixar produtos próximos nas prateleiras, planejar promoções, panfl etos e degustações, 
analisar comportamento por clima e etc.
O que é KDD?
Descobrir conhecimentos, extrair e processar informações são ações cotidianas para es-
tatísticos, programadores em Data Science. Em 1989, um um conceito foi determinado sobre 
KDD, que signifi ca “Descoberta de conhecimento de Bancos de Dados” (Knowledge Discovery in 
Databases). A Fig. 23 mostra as etapas do processo KDD.
Macroetapas do KDD
De forma semelhante, mas não igual ao data warehouse, o KDD possui etapas. 
A principal diferença do data warehouse é que ele objetiva demonstrar muitos dados de 
Dados consolidadosFontes de dados ConhecimentoPadrões e modelosDados preparados
Consolidação de dados Seleção e pré-processamento Data mining Interpretação e avaliação
Figura 23. Processo de KDD. Fonte: SABAIA, 2015.
Primeiramente, a empresa faz a captação e a consolidação dos dados; então, nessa mina 
de informações, inicia-se o processo de seleção e tratamento de dados, após isso, a mine-
ração avançada é realizada e o tratamento das informações transforma a mineração em 
conhecimento.
O KDD é um processo, que será destrinchado na prática posteriormente. De acordo com Fay-
yad et al. (1996, p. 88), “KDD é um processo não trivial, interativo, para identifi cação de padrões 
compreensíveis, válidos, novos e potencialmente úteis a partir de grandes conjuntos de dados”. 
O processo necessita de profi ssionais especializados em tratamento de dados e um profi ssional 
especializado em estatística e aplicação em negócios. O objetivo do KDD é descobrir recorrências nos 
dados, tanto para análises presentes quanto para previsões futuras, em que índices de confi ança 
determinam qual é a porcentagem que a relação de causa e efeito tem em um conjunto de dados. 
MINERAÇÃO DE DADOS 32
Mineração de dados - Unidade1.indd 32 08/07/19 16:43
forma visual e acessível; ele é um depósito de dados orientado por temas e que variam para 
os tomadores de decisão (dashboards). Já o KDD objetiva ter conhecimento e analisar mais a 
fundo os padrões.
As entidades a serem analisadas são produtos, vendas, compras, eventos, textos, solicita-
ções eletrônicas, requisições, clientes e etc. 
A Fig. 24 mostra as etapas do processo de mineração em uma visão mais sistêmica.
Pré-processamento Pós-processamentoMineração de Dados
Etapas operacionais do processo de KDD
Interação
Interação Especialista em KDDEspecialista em domínio
Figura 24. Etapas na mineração. Fonte: GOLDSHIMDIT et al., 2015, p. 22.
A primeira macroetapa é o pré-processamento, que passa por três fases:
• Seleção de dados: em que duas ações são feitas, a seleção de atributos desejáveis 
pelo especialista (nome, idade, bairro, faixa etária e etc.) e o tipo de registro desejado 
(maior que 20 anos, masculino, vendas à vista e etc). Nesta fase, aplicam-se os filtros 
de Excel e de SQL (por exemplo: select * from table where sexo = masculino e idade > 
20). Nesta fase, também são criados clusters (grupos) por similaridades. Pode-se criar 
novas tabelas. 
• Limpeza de dados: esta é a segunda fase, em que valores vazios fora do intervalo espe-
rado e errados são removidos (por exemplo, delete from table_name where idade is null). 
A Fig. 25 mostra um exemplo de criação de dados vazios (null) na linha 7, um exemplo 
de limpeza de dados vazios na linha 11; após executar o select * from, o registro com da-
dos vazios não aparece na seleção, pois foi deletado de propósito, uma vez que estava 
incompleto. Só aparece o Samsung e Ultrabook.
MINERAÇÃO DE DADOS 33
Mineração de dados - Unidade1.indd 33 08/07/19 16:43
Deixar
Desativado
Figura 25. Remoção de valores vazios em MySQL.
Figura 26. Desabilitar segurança contra delete. 
• Adição e alimentação de mais dados: esta é a terceira e última fase, em que a finali-
dade é buscar mais informações ainda não colocadas nas bases, também chamado de 
enriquecimento, podendo ser outras tabelas, tabelas de dados que acabam por cruzar 
com estes no cotidiano etc. 
Cabe citar que existe uma ferramente no Workbench de segurança que precisa ser 
desabilitada para excutar o delete. A Fig. 26 mostra como desabilitar.
MINERAÇÃO DE DADOS 34
Mineração de dados - Unidade1.indd 34 08/07/19 16:43
Na segunda macroetapa, as análises estatísticas são feitas, por exemplo, regressão linear, 
regressão logística, descoberta de similaridades (KNN), clusterização, descobertas de variân-
cia, desvio padrão, classificações, regras de associação e etc. Nesta etapa, são utilizados pro-
gramas como Weka, SPSS, Jupyter Notebook, Past, SAS Entrepise, PolyAnalyst, bem como as 
linguagens Python, R e SQL, fundamentalmente. 
A terceira macroetapa é a extração de conhecimento ou pós-processamento (GOLDSHIM-
DIT et al., 2015, p. 27). Aqui, é necessário fazer um estudo dos dados para gerar relatórios, 
gráficos e então mudar decisões empresariais. 
MINERAÇÃO DE DADOS 35
Mineração de dados - Unidade1.indd 35 08/07/19 16:43
Sintetizando
No presente projeto, primeiramente foi falado sobre as diferenças entre dados, informação 
e conhecimento, em que dados são coletados de forma bruta e através de programas como 
Excel, SQL, Access e etc.; informação é a análise de dados; e conhecimento é o entendimento 
e a compreensão dos padrões que estão atrás dos dados, bem como a avaliação de padrões 
estatísticos, validando hipóteses, para tomada de decisão estratégica. 
O conceito de mineração foi explicado para entender como os padrões podem ser desco-
bertos, a fim de achar padrões de sequência, padrões de causa e efeito, padrões de relações 
entre dados, bem como mineração em data warehouse em que um processo de limpeza e de 
exibição de dados facilita a leitura de dados exorbitantes. 
Filtros em Excel, através de dois parâmetros, foram explicados por uma tabela modelo, a 
fim de possibilitar o data mining na prática. Foi passado, ainda, como executar scripts e algo-
ritmos SQL, a fim de criar tabelas, selecionar de forma estratégica através da cláusula where.
Para demonstrar de forma prática como criar exibições em dashboards, foi passado o pro-
cesso de como criar gráficos dinâmicos. 
Por fim, foi explicado o que é KDD e como ele se subdivide nas etapas de pré-processamen-
to, processamento (mineração) e pós-processamento. 
MINERAÇÃO DE DADOS 36
Mineração de dados - Unidade1.indd 36 08/07/19 16:43
Referências bibliográficas
CASTRO, G. R. Discussão conceitual sobre dado, informação e conhecimento: perspectiva 
dos alunos concluintes do curso de Biblioteconomia da UFPB. 2011. 51 f. Monografia apresenta-
da ao curso de Biblioteconomia da Universidade Federal da Paraíba como requisito parcial para 
obtenção do título de bacharel em Biblioteconomia – Universidade Federal da Paraíba, 2011. 
COMO instalar MySQL e Xampp. Postado por Luiza Cerchiari. (5min. 47s.). son. color. port. 
Disponível em: <https://www.youtube.com/watch?v=srcl7b1LeCg&feature=youtu.b>. Acesso 
em: 29 mar. 2019. 
FAYYAD, U.M.; PIATETSKY-SHAPIRO, G.; SMYTH, P.; UTHURUSAMY, R. Advances in knowledge 
discovery and data mining. Califórnia: AAAI/MIT Press, 1996. 
GOLDSHIMDIT, R.; BEZERRA, E.; PASSOS, E. Data mining: conceitos, técnicas, algoritmos, orien-
tações e aplicações. Rio de Janeiro: Elsiever, 2015. 
PRIMEIROS passos com MySQL. Postado por Luiza Cerchiari. (5min. 03s.). son. color. port. 
Disponível em: <https://www.youtube.com/watch?v=QoCcYpf_ZXw&feature=youtu.be>. Aces-
so em: 29 mar. 2019. 
POWER BI. Welcome to the data stories gallery. Disponível em: <https://community.powerbi.
com/t5/Data-Stories-Gallery/bd-p/DataStoriesGallery>. Acesso em: 29 mar. 2019.
SABAIA, W. F. Processo de KDD. Disponível em: <http://docplayer.com.br/3575573-O-proces-
so-de-kdd-data-mining-sumario-aula1-o-processo-de-kdd-interpretacao-e-avaliacao-selecao-
-e-pre-processamento-consolidacao-de-dados.html>. Acesso em: 29 mar. 2019.
SOUZA, F. Limites de pagamento dos órgãos do poder executivo da união. Disponível em: <http://
dados.gov.br/dataset/limites-de-pagamento-dos-orgaos-da-uniao>. Acesso em: 29 mar. 2019.
MINERAÇÃO DE DADOS 37
Mineração de dados - Unidade1.indd 37 08/07/19 16:43

Continue navegando