# Procedures para Exploração de Dados

Em estatística, a análise exploratória de dados (AED) é uma abordagem à análise de conjuntos de dados de modo a resumir suas características principais, frequentemente com métodos visuais. Um modelo estatístico pode ou não ser usado, mas primariamente a AED tem como objetivo observar o que os dados podem nos dizer além da modelagem formal ou do processo de teste de hipóteses.Wikipedia (opens new window)

O SAS fornece uma série de "procedures" que facilitam o trabalho de análise exploratória dos dados, como CONTENTS, PRINT, MEANS, UNIVARIATE e FREQ.

(Os exemplos criados com a tabela SASHELP.AIR)

# Procedure CONTENTS

Exibe um resumo sobre o arquivo ou tabela carregada.

TIP

Mais informações sobre CONTENTS na documentação oficial (opens new window)

Procedure CONTENTS

data tbl_air;
	set sashelp.air;
run;

proc contents data=tbl_air;
run;

# Procedure PRINT

Cria uma lista com todas as colunas e linhas de dados:

TIP

Mais informações sobre PRINT na documentação oficial (opens new window)

Procedure PRINT

data tbl_air;
	set sashelp.air;
run;

proc print data=tbl_air;
run;

A quantidades de obsevações exibidas pode ser limitada pela opção obs como a seguir:

proc print data=sashelp.air (obs=10);
run;

# Procedure MEANS

Cria umum sumário de estatísticas para as colunas com dados numéricos. A procedure MEANS apresenta a frequencia de ocorrência, a média, o desvio padrão e os valores máximos e mínimos.

TIP

Com este sumário é possível determinar se existem valores nulos numa determinada coluna e a existência de valores inválidos. Mais informações sobre MEANS na documentação oficial (opens new window)

Procedure MEANS

data tbl_air;
	set sashelp.air;
run;

proc means data=tbl_air;
run;

# Procedure UNIVARIATE

Também cria um sumário com estatísticas, desta vez mais relacionadas à distribuição do dados.

TIP

Com este sumário é possível observar os cinco menores e maiores valores. Mais informações sobre UNIVARIATE na documentação oficial (opens new window)

Procedure UNIVARIATE

data tbl_air;
	set sashelp.air;
run;

proc univariate data=tbl_air;
run;

# Procedure FREQ

Cria uma tabela de frequencia para cada coluna da tabela.

TIP

Na tabela de frequencias é possível identificar problemas como valores inconsistentes. Mais informações sobre FREQ na documentação oficial (opens new window)

Procedure FREQ

data tbl_air;
	set sashelp.air;
run;

proc freq data=tbl_air;
run;

# Filtrando Dados em Procedures

Para filtrar os dados durante o uso das procedures utilizamos o comando WHERE de forma semelhante ao seu uso em SQL.

PROC nome-procedure data=.... ;
         WHERE expressão;
RUN;

# Os operadores de comparação utilizados são:

Descrição Operador Exemplo
Igualdade = ou EQ nome = 'Lidia'
Desigualdade ^= ou ~= ou NE nome ~= "Beto"
Maior que > or GT idade > 25
Menor que < or LT idade < 25
Maior que ou igual >= or GE idade >= 25
Menor que ou igual <= or LE idade <= 25

# Os operadores de comparação podem ser combinados:

Operador Exemplo
AND nome = 'Lidia'and idade>=25
OR nome = 'Lidia'or idade>=25
BETWEEN idade BETWEEN 18 AND 25
BETWEEN 18< idade >25

TIP

  • SAS diferencia maiúsculo e minúsculo, logo 'LIDIA', 'Lidia' e 'lidia' são diferentes.
  • Os valores de campos caracter podem ser delimitado por ' ou ", como em 'Lidia' e "Beto".
  • Datas devem ser digitadas no fomrato "dmmmaa"d ou "ddmmmaaaa"d como em "9apr19"d ou "09APR2019"d.

# Operadores "Like", "In" e "Not in"

Operador Exemplo
LIKE nome LIKE "Maria%"
IN nome IN ('Lidia' 'Beto')
NOT IN nome NOT IN ('Claudio','Sonia')

TIP

  • Ao utilizar LIKE pode-se usar % ou _

nome like "Mari%", retornará "Maria Clara", "Mario Assis", "Marisa Sousa"

nome like "Mari_ %", retornará "Maria Clara" e "Mario Assis"

  • As listas de valores em IN e NOT IN podem ser separadas por espaços ou virgula com em ('Lidia','Beto') e ('Claudio' 'Sonia')