data a

Transcrição

data a
Hilton Thadeu Zarate do Couto
1
O que é o SAS?
q
• Desenvolvido no início da década de 70 na North Carolina State
•
•
•
•
•
•
•
University, Raleigh, NC
No início, o objetivo era analisar estatisticamente experimentos agrícolas e para uso em investigação científica.
É o pacote estatístico mais usado no mundo (lucro em 2008: 2,26 p
(
,
bilhões de dólares, sendo 22% aplicado em novos investimentos).
SAS – Statistical Analysis System
James Goodnight ( segundo a Forbes é o 75
é o 75º mais rico do mundo: mais rico do mundo: patrimônio de 6,1 bilhões de dólares).
Mais de 11.000 empregados em 114 países.
92 das 100 maiores companhias no mundo usam SAS
92 das 100 maiores companhias no mundo usam SAS.
Todas as 100 maiores universidades no mundo usam SAS (QS Top Universities).
2
Liderança do SAS
ç
y A cada 11 horas a quantidade de informação digital no mundo dobrará em 2010
mundo dobrará em 2010.
y Data Mining e Data Warehouse: duas linhas de desenvolvimento e investimento do SAS.
desenvolvimento e investimento do SAS
y Em 2008 adquiriu a empresa TERAGRAM, especializada em mineração de texto (clientes: Yahoo!, Banco Mundial, CNN, Forbes, NY Times, Washington Post etc )
Washington Post, etc.)
3
O que é Mineração de Dados?
q
ç
y Processo de extração de conhecimento de grandes bases de dados convencionais ou não
bases de dados convencionais ou não.
y O objetivo é encontrar automaticamente padrões, anomalias e regras com o propósito de transformar anomalias e regras, com o propósito de transformar dados em informações úteis para a tomada de decisões e/ou avaliação de resultados.
e/ou avaliação de resultados
4
Áreas envolvidas
Data D
t Warehouse
Estatística
Inteligência Artificial
Mineração de Dados
de
Dados
5
Inteligência Artificial
g
y Ciência e engenharia usadas para fazer com que as máquinas sejam inteligentes (tomem decisões, máquinas sejam inteligentes (tomem decisões
baseadas em informações), usando programas computacionais.
computacionais
y Ex.: fazer um programa de computador para uma máquina jogar xadrez.
máquina jogar xadrez
6
Tarefas realizadas pela Mineração de Dados
ã d
d
y Modelagem preditiva (classificação e regressão).
Modelagem preditiva (classificação e regressão)
y Segmentação (análise de agrupamento).
y Sumarização (média, variância, coeficiente de ( d
f
d
variação).
y Visualização (análise gráfica).
(
)
7
Árvore de Decisão de Plantio
Árvore de Decisão de Plantio
TEMPO
Nublado
Ensolarado
Umidade
Não Pl
Plantar
Al
Alta
Não Pl
Plantar
Norm
al
Chuvoso
Muito Vento
Sim
Plantar
Não Pl
Plantar
Não
Plantar
8
Exemplos de Aplicação
p
p ç
• Bancos: Selecionar clientes para limite de crédito no cartão de crédito
cartão de crédito.
• Medicina: Clientes entre 25 e 35 anos casados, apresentam maior risco de doenças psico somáticas
apresentam maior risco de doenças psico‐somáticas.
• Supermercados: Definir produtos de acordo com a região e estação do ano Ex : eletrodomésticos 110 v não região e estação do ano. Ex.: eletrodomésticos 110 v não vendem em SC pois a corrente é 220 v.
9
Produtos SAS
• Base – SAS – procedimentos básicos para o manejo de •
•
•
•
•
•
•
dados
dados.
SAS/Stat: análise estatística
SAS/G h SAS/Graph: apresentação gráfica de qualidade.
ã áfi d lid d
SAS/OR : pesquisa operacional
SAS/ETS: econometria e séries temporais.
SAS/IML: linguagem matricial interativa
g g
SAS/AF: para desenvolvimento de menus e interfaces.
SAS/QC: controle de qualidade 10
Documentação
ç
y www.sas.com
y http://support.sas.com/onlinedoc/913/docMainpage.js
h
//
/ li d / /d M i
j
p : manuais da versão 9.13 (ano passado o SAS lançou a versão 9 2)
versão 9.2)
11
Estrutura básica do SAS
y 3 componentes principais na maioria dos programas:
y Comandos DATA
C
d DATA
y DADOS
y Comandos PROC (procedure).
C
d PROC (
d )
12
Comandos DATA
y Lê os dados de fontes internas ou externas, manipulam os dados e combinam com outros dados
os dados e combinam com outros dados.
y Se presta para preparar os dados para serem usados por um ou mais procedimentos.
um ou mais procedimentos
y Exemplo:
y DATA AMBIENTE; DATA AMBIENTE INPUT LOCAL $ PONTO ESPECIE INDIV; ABUND=INDIV*60/15; /* Transforma número de indivíduos observados em 15 minutos, para horas*/ DATALINES; ......... 13
Comandos PROC
y Realiza as análises dos dados e produz a listagem na janela OUTPUT
janela OUTPUT.
y Exemplos de Proc:
y PROC PRINT
y PROC ANOVA
y PROC SORT
y PROC MEANS
y PROC UNIVARIATE
y PROC GLM
14
Conceitos e Regras do SAS
g
y O nome SAS deve ter no máximo 32 caracteres, composto de letras, ( )
(_)
números e do caractere sublinhado y Não deve começar por número.
y Não deve ter espaços em branco.
()
(;)
y Cada sentença SAS deve terminar com o ponto e vírgula y Linhas que começam com comentário.
* e terminam com o ; são tratadas como //* e *//.
y Os comentários também podem ser colocados entre y RUN; é o comando usado para executar o programa.
15
Comando Globais
y
y
y
y
Existem algumas opções globais:
Linesize = LS para definir o tamanho da linha
LS para definir o tamanho da linha
Pagesize = PS para definir o tamanho da página
NODATE para impedir o aparecimento da data na listagem de saída
y PAGENO=1 para iniciar a listagem com número da página = 1.
y Estes comandos geralmente é incluído no início do programa dentro do comando OPTIONS.
y Ex.: OPTIONS PS=54 LS=78 NODATE PAGENO=1;
54
7
16
Janelas
y 3 janelas principais
y EDITOR usada para criar, editar e executar um EDITOR d i di programa SAS.
y LOG relata o progresso do programa SAS, mostra os LOG l d SAS erros (vermelho) e os avisos (verde).
y OUTPUT mostra a saída de um programa SAS. Pode‐se OUTPUT íd d SAS P d
copiar, salvar ou imprimir a listagem do programa SAS.
17
18
Entrada de dados para análise
p
y 3 modos de entrada de dados no SAS:
y Ler dados digitados ou colados na janela EDITOR
L d d di it d l d j
l EDITOR
y Usar o comando INFILE
y Importar dados do Excel
I
d d d E l
19
Ler dados digitados ou colados no EDITOR
Ler dados digitados ou colados no EDITOR
y DATA ALUNO;
y INPUT NOME $ SEXO $ ALTURA;
INPUT NOME SEXO ALTURA
y DATALINES;
y JOÃO M 1.85
y MARIA F 1.65
y PEDRO M 1.72
y JOANA F 1.71
y;
y PROC PRINT DATA=ALUNO; RUN;
20
Uso do comando INFILE
y Cria‐se um arquivo texto no WordPad ou qualquer outro software em um diretório externo (disco ou mídia).
y Arquivo SASDAD.txt:
Arquivo SASDAD txt:
y A 5 4
y B 8 12
B y C 10 23
y D 5 11
y E 8 15
5
21
Programa SAS para ler os dados em arquivo texto externo
arquivo texto externo
y DATA LOCAL;
y INFILE ‘C:\SASDAD.txt’;
INFILE ‘C \SASDAD ’
y INPUT LOCAL $ IDADE ALTURA;
y PROC PRINT DATA=LOCAL; y RUN;
22
Importar dados do Excel
p
y Usar tutorial do SAS:
y O arquivo Excel está em um diretório no computador O i E l á di ó i d ou em mídia: Ex.: Produtor.xls
y Na janela EDITORÎ
N j
l EDITORÎ File Î
Fil Î Import Data
I
D
23
24
25
26
27
Programa de importação de dados do Excel
Programa de importação de dados do Excel
PROC IMPORT OUT=
OUT WORK.a1
DATAFILE= "C:\Arquivos2009\Mapas2009\DADOSEXC.xls"
DBMS=EXCEL REPLACE;
SHEET="Plan1$";
GETNAMES=YES;
MIXED=NO;
SCANTEXT=YES;
USEDATE YES;
USEDATE=YES;
SCANTIME=YES;
RUN;
PROC PRINT DATA=A1;
RUN;
28
Saída SAS
y A listagem (resultados das análises) pode ser gravada em HTML (HyperTextMarkupLanguage); PS (PostScript); RTF (RichTextFormat – pode salvar em Microsoft WORD) e PDF (PortableDocumentFormat) Microsoft WORD) e PDF (PortableDocumentFormat), entre outros formatos.
y Na janela OUTPUT do SAS: pode ser copiado e colado, Na janela OUTPUT do SAS: pode ser copiado e colado por exemplo no Microsoft WORD, ou impresso diretamente.
29
Programa SAS para gravar arquivo em PDF (Adobe Acrobat)
(Adobe Acrobat)
PROC IMPORT OUT= WORK.a1
DATAFILE= "C:\Arquivos2009\Bioestatistica2009\DADEXC.xls"
DBMS=EXCEL REPLACE;
SHEET="Plan1$";
GETNAMES=YES;
MIXED=NO;
SCANTEXT=YES;
USEDATE=YES;
SCANTIME=YES;
RUN;
ODS PDF FILE ‘C:\RESULTADO.PDF’;
PROC PRINT DATA=A1;
RUN;
ODS PDF CLOSE;
30
Alguns comandos SAS g
y LENGTH
y IF... THEN...;
IF THEN
y DELETE
y DROP, KEEP
y AND OR
y EQ, NE, GE, LE, GT, LT
31
Programa SAS: Programa
SAS:
Uso do comando LENGTH
OPTIONS PS=54
PS 54 LS=72 PAGENO=1;
DATA A;
LENGTH LOCAL ESPECIE $12.;
INPUT LOCAL $ ESPECIE $ VOLUME IDADE;
DATALINES;
RCLARO E.GRANDIS 123 5
RCLARO E.SALIGNA
211 8
PIRACICABA P.TAEDA 201 15
PIRACICABA P.ELLIOTTII 98 8
BAURÚ E.GRANDIS 321 7
LENÇOIS E.UROPHYLLA 303 7
;;;
PROC PRINT DATA=A;
RUN;
32
Uso de comando condicional:
Uso
de comando condicional:
IF ... THEN ...;;
OPTIONS PS=54 LS=72 PAGENO=1;
DATA A;;
LENGTH LOCAL ESPECIE $12.;
INPUT LOCAL $ ESPECIE $ VOLUME IDADE;
IF LOCAL =‘RCLARO’ THEN DELETE;
DATALINES;
Caractere
RCLARO E.GRANDIS 123 5
entre
RCLARO E.SALIGNA 211 8
aspas
PIRACICABA P.TAEDA 201 15
PIRACICABA P.ELLIOTTII 98 8
BAURÚ E.GRANDIS 321 7
LENÇOIS E.UROPHYLLA
E UROPHYLLA 303 7
;;;
PROC PRINT DATA=A;
RUN;
33
Uso de comando condicional: Uso
de comando condicional:
IF ... THEN ...:
OPTIONS PS=54 LS=72 PAGENO=1;
DATA A;
LENGTH LOCAL ESPECIE $12
$12.;;
INPUT LOCAL $ ESPECIE $ VOLUME IDADE;
IF IDADE=7 THEN DELETE;
DATALINES;
RCLARO E.GRANDIS 123 5
RCLARO E.SALIGNA 211 8
PIRACICABA P.TAEDA
P TAEDA 201 15
PIRACICABA P.ELLIOTTII 98 8
BAURÚ E.GRANDIS 321 7
LENÇOIS E.UROPHYLLA 303 7
;;;
PROC PRINT DATA=A;
RUN;;
34
Número sem aspas
Uso de comando condicional:
Uso
de comando condicional:
AND (E)
OPTIONS PS=54 LS=72 PAGENO=1;
DATA A;
LENGTH LOCAL ESPECIE $12
$12.;;
INPUT LOCAL $ ESPECIE $ VOLUME IDADE;
IF IDADE=7 AND LOCAL=‘BAURÚ’ THEN DELETE;
DATALINES;
RCLARO E.GRANDIS 123 5
RCLARO E.SALIGNA 211 8
PIRACICABA P.TAEDA
P TAEDA 201 15
PIRACICABA P.ELLIOTTII 98 8
BAURÚ E.GRANDIS 321 7
LENÇOIS E.UROPHYLLA 303 7
;;;
PROC PRINT DATA=A;
RUN;;
35
35
Uso de comando condicional:
Uso
de comando condicional:
OR (OU)
OPTIONS PS=54 LS=72 PAGENO=1;
DATA A;
LENGTH LOCAL ESPECIE $12
$12.;;
INPUT LOCAL $ ESPECIE $ VOLUME IDADE;
IF LOCAL=‘LENÇOIS’ OR LOCAL=‘BAURÚ’ THEN DELETE;
DATALINES;
RCLARO E.GRANDIS 123 5
RCLARO E.SALIGNA 211 8
PIRACICABA P.TAEDA
P TAEDA 201 15
PIRACICABA P.ELLIOTTII 98 8
BAURÚ E.GRANDIS 321 7
LENÇOIS E.UROPHYLLA 303 7
;;;
PROC PRINT DATA=A;
RUN;;
36
36
Comandos de comparação
p ç
y EQ = IGUAL A
y NE = DIFERENTE DE
NE DIFERENTE DE
y GE = MAIOR OU IGUAL A y LE = MENOR OU IGUAL A y GT = MAIOR QUE
y LT = MENOR QUE
37
Programa SAS: modificação dos dados.
OPTIONS PS=54 PAGENO=1;
DATA SOBREV;
INPUT ESP $ IDADE VIVOS ;
TAXAMORT= ((25-VIVOS)/25)*100;
((25 VIVOS)/25)*100;
DATALINES;
A01 0 25
A01 1 25
A01 2 21
A01 3 18
A01 4 11
A01 5 7
A01 6 3
A02 0 25
A02 1 25
A02 2 25
A02 3 14
A02 4 6
A02 5 1
A02 6 0
;;;
PROC PRINT DATA=SOBREV;
RUN;
38
Programa SAS: EQ (Igual a )
(
l )
OPTIONS PS=54 PAGENO=1;
DATA SOBREV;
INPUT ESP $ IDADE VIVOS ;
TAXAMORT= ((25-VIVOS)/25)*100;
((25 VIVOS)/25)*100;
IF TAXAMORT EQ 0 THEN DELETE;
DATALINES;
A01 0 25
A01 1 25
A01 2 21
A01 3 18
A01 4 11
A01 5 7
A01 6 3
A02 0 25
A02 1 25
A02 2 25
A02 3 14
A02 4 6
A02 5 1
A02 6 0
;;;
PROC PRINT DATA=SOBREV;
RUN;
39
Programa SAS: NE
OPTIONS PS=54 PAGENO=1;
DATA SOBREV;
INPUT ESP $ IDADE VIVOS ;
TAXAMORT= ((25-VIVOS)/25)*100;
((25 VIVOS)/25)*100;
IF ESP NE ‘A02’ THEN DELETE;
DATALINES;
A01 0 25
A01 1 25
A01 2 21
A01 3 18
A01 4 11
A01 5 7
A01 6 3
A02 0 25
A02 1 25
A02 2 25
A02 3 14
A02 4 6
A02 5 1
A02 6 0
;;;
PROC PRINT DATA=SOBREV;
RUN;
40
Programa SAS: GE (Maior ou igual a)
(
l )
OPTIONS PS=54 PAGENO=1;
DATA SOBREV;
INPUT ESP $ IDADE VIVOS ;
TAXAMORT= ((25-VIVOS)/25)*100;
((25 VIVOS)/25)*100;
IF IDADE GE 5 ;
DATALINES;
A01 0 25
A01 1 25
A01 2 21
A01 3 18
A01 4 11
A01 5 7
A01 6 3
A02 0 25
A02 1 25
A02 2 25
A02 3 14
A02 4 6
A02 5 1
A02 6 0
;;;
PROC PRINT DATA=SOBREV;
RUN;
41
Programa SAS: LE (Menor ou igual a)
(
l )
OPTIONS PS=54 PAGENO=1;
DATA SOBREV;
INPUT ESP $ IDADE VIVOS ;
TAXAMORT= ((25-VIVOS)/25)*100;
((25 VIVOS)/25)*100;
IF IDADE LE 2 THEN VIVOS=25 ;
DATALINES;
A01 0 25
A01 1 25
A01 2 21
A01 3 18
A01 4 11
A01 5 7
A01 6 3
A02 0 25
A02 1 25
A02 2 25
A02 3 14
A02 4 6
A02 5 1
A02 6 0
;;;
PROC PRINT DATA=SOBREV;
RUN;
42
Exercício
y A) Fazer um programa SAS para selecionar apenas as idades maiores que 4 (Use o comando GT)
idades maiores que 4 (Use o comando GT).
y B) Fazer um programa SAS para selecionar apenas as idades cujos números de sobreviventes sejam menores que 15 (Use o comando LT).
43
44

Documentos relacionados

Apostila de treinamento – SAS

Apostila de treinamento – SAS Um programa SAS é uma combinação do uso de comandos das estruturas de programação básica do SAS e comandos especiais: - Comandos livres - Utilizados em qualquer parte do programa; - Comandos genéri...

Leia mais