# A Liguagem SAS
Um programa na linguagem SAS consiste em uma sequencia de passos
Cada passo no programa é responsável por uma atividade específica. Existem dois tipos de passos:
- os passos detinados às atividades de ingestão de dados (DATA); e
- os passos voltados para manipulação dos dados, cálculos e outros procesamentos (PROC);
Os passos DATA e PROC são combinados de maneiras diversas formando a estrutura do programa. Todo passo deve respeitar algumas convenções:
- Toda instrução de um passo deve terminar sempre delimitada por ;.
- Todo passo começa com as palavras-chave DATA ou PROC e, normalmente, deve terminar com uma instrução "RUN".
- Comentários de uma linha começam por * como no exemplo abaixo, ou pelos delimitadores /* */.
/* ----------------------------------------------------------------------
Existem várias tabelas prontas no SAS Studio. Podem sem encontradas
em "Library/My Libraries/SASHELP".
---------------------------------------------------------------------- */
data tbl_air; * Cria um objeto tbl_air para receber dados;
set sashelp.air; * Seleciona a tabela air;
run;
proc print data=tbl_air;
run;
TIP
- Os passos podem executados selecionado o mesmo e clicando no otão correspondente a RUN ou pressionando F3.
- A liguagem não faz distinção entre maiúsculo ou minúsculo, logo "Data", "DATA" ou "data" são avaliados da mesma forma.
- Use Ctl-/ para comentar uma linha inteira.
- Ao contrário de Python, a identação não é importante. Você pode colocar todos os comandos numa única linha. Vai ser terrível para entender, mas pode ser feito. Existe no menu a opção "Format Code" para identar os passos, automaticamente. Aproveite!☺
- O SAS Studio tentará corrigir, em tempo de execução, erros de sintaxe. Caso não consiga, deixará de processar aquele comando. Logo é IMPRESCINDÍVEL verificar o LOG de processamento para certificar-se de que o código está integro.
# O passo DATA
o passo DATA é usado para ler dados, carregá-los carregando em uma tabela semelhante a um dataframe em R. Neste tipo de passo também podemos filtrar linhas, unir tabelas e inserir novas colunas.
# O passo PROC
No passo PROC trabalhamos com as tabelas criadas nos passos DATA fazendo análises estatísticas, criando gráficos e relatórios.
# Comandos Globais
Além dos passos um programa SAS pode ter comandos globais como TITLE, OPTIONS, LIBNAME que são utilizados para definir o ambiente de trabalho, por exemplo.
# Variáveis Macro (Let)
A linguagem possui as variáveis macro, semelhante as variáveis globais, para facilitar a manutenção do código:
proc print data=sashelp.shoes;
where Product="Boot";
var Region Subsidiary Stores;
run;
proc means data=sashelp.shoes;
where Product="Boot";
var Stores Sales Returns;
run;
proc freq data=sashelp.shoes;
where Product="Boot";
tables Inventory;
run;
Utilizando a variável nome_produto, criada pelo comando %let nome_produto=Boot;
, e substituindo cada ocorência de Product="Boot"
por Product="&nome_produto"
, o código torna-se mais fácil de ser alterado para a consulta de outros produtos:
%let nome_produto=Boot;
proc print data=sashelp.shoes;
where Product="&nome_produto";
var Region Subsidiary Stores;
run;
proc means data=sashelp.shoes;
where Product="&nome_produto";
var Stores Sales Returns;
run;
proc freq data=sashelp.shoes;
where Product="&nome_produto";
tables Inventory;
run;
WARNING
Atenção: ao usar as variáveis, certifique-se de que está usando aspas duplas para delimitá-las como em Product="&nome_produto"
# Referências
SAS Programming 1 - SAS Free Learning (opens new window)
Aprenda SAS e torne se um ninja dos dados- Udemy (opens new window)