Apostila com informações, comandos e exemplos estatísticos aplicáveis no SAS
INTRODU O AO
SAS
Euclides Braga MALHEIROS
FCAV/UNESP Campus de Jaboticabal
ii
NDICE
I. APRESENTA O.1 I.1. M dulos do SAS.1 I.2. Janelas do SAS .1 I.3. Barra de ferramentas .4 I.4. Help do SAS.5 II. PROGRAMA O SAS .6 II.1. Alguns comandos do SAS .6 OPTIONS .6 TITLE .7 FOOTNOTE .7 COMENT RIOS .7 DATA .7 LIBNAME .8 FILENAME .8 RUN.8 COMANDOS ARITM TICOS.8 Constantes.8 Vari veis .8 Operadores .8 Aritm ticos .9 L gicos.9 De compara o.9 Fun es .9 II.2. Algumas estruturas usadas na programa o.10 IF . THEN . ELSE .10 DO . END .10 II.3. Algumas formas para criar um SAS-DATA-SET .11 Quando os dados s o colocados no pr prio programa .11 Quando os dados est o gravados como um arquivo ASCII.11 Comando INPUT .11 Listado.11 Colunado .11 Formatado .11
iii
II.4. Procedimentos do SAS .12 Estrutura b sica dos procedimentos .12 Comandos que podem ser usados nos procedimentos.13 VAR.13 BY.13 CLASS .13 ID .13 TITLE .13 FOOTNOTE .13 WHERE .13 OUTPUT OUT .13 III. Tutorial do SAS .14 IV. Programas Exemplos.14 V. INFORMA ES (Procedimentos e comandos) separadas por aula .15 V.1. Informa es necess rias para a aula 1.15 Comandos .15 DROP.15 KEEP .15 LABEL.15 Procedimentos .15 PROC PRINT .15 PROC SORT.15 PROC MEANS .16 Como criar um arquivo ASCII a partir do Excel .16 Lista de Exerc cios Aula 1.17 V.2. Informa es necess rias para a aula 2.19 Comandos .19 SET .19 MERGE .19 INFILE .20 Lista de Exerc cios Aula 2.21 V.3. Informa es necess rias para a aula 3.22 Procedimentos .22 FREQ .22 TTEST .22 Lista de Exerc cios Aula 3.23 V.4. Informa es necess rias para a aula 4.24
iv
Procedimentos .24 UNIVARIATE.24 INSIGHT .24 Lista de Exerc cios Aula 4.25 V.5. Informa es necess rias para a aula 5.26 Gr ficos de dispers o .26 PROC PLOT .26 PROC GPLOT .27 Outros gr ficos .27 Histogramas (PROC GCHART).27 Gr ficos de 3 dimens es (PROC G3D) .28 Lista de Exerc cios Aula 5.29 V.6. Informa es necess rias para a aula 6.30 Regress o Linear .30 PROC REG.30 Lista de Exerc cios Aula 6.31 V.7. Informa es necess rias para as aulas 7 e 8.32 PROC ANOVA .32 CLASS .32 MODEL .32 MEANS .33 TEST H=. E=. .33 PROC GLM .33 LSMEANS.33 CONTRAST .34 RANDOM.34 Lista de Exerc cios Aula 7.35 V.8. Informa es necess rias para a aula 8 .37 Considera es estat sticas .37 Esperan as dos quadrados m dios .37 Regras pr ticas para obten o das esperan as dos quadrados m dios E(QM) dados balanceados.38 Procedimentos para estimativas de componentes da vari ncia .39 PPROC VARCOMP .39 Lista de Exerc cios Aula 8.40
v
V.9. Informa es necess rias para a aula 9 .41 Procedimentos para estimar componentes da vari ncia .41 PROC NPAR1WAY.41 Lista de Exerc cios Aula 9.42 V.10. Informa es necess rias para a aula 10 .43 Procedimento para Regress o N o Linear .43 PROC NLIN .43 Lista de Exerc cios Aula 10.44
VI. RESOLU O DAS LISTAS DE EXERC CIOS.45 VI.1. Resolu o da Lista de Exerc cios Aula 1.45 VI.2. Resolu o da Lista de Exerc cios Aula 2.47 VI.3. Resolu o da Lista de Exerc cios Aula 3.49 VI.4. Resolu o da Lista de Exerc cios Aula 4.51 VI.5. Resolu o da Lista de Exerc cios Aula 5.52 VI.6. Resolu o da Lista de Exerc cios Aula 6.53 VI.7. Resolu o da Lista de Exerc cios Aula 7.55 VI.8. Resolu o da Lista de Exerc cios Aula 8.58 VI.9. Resolu o da Lista de Exerc cios Aula 9.59 VI.10. Resolu o da Lista de Exerc cios Aula 10.60
INTRODU O AO SAS
Euclides Braga MALHEIROS1
I. Apresenta o
O SAS um sistema composto por v rios m dulos, com aplica es diversas. Al m do m dulo para an lises estat sticas, o SAS/STAT, v rios outros m dulos fazem parte do sistema.
I.1. M dulos do SAS
SAS/BASE - Procedimentos b sicos SAS/ACCESS - Banco de Dados SAS/AF - Gerador de Aplicativos SAS/CALC - An lise e modelagem financeira/Planilha tridimensional SAS/CONNECT - Conectividade do SAS com diferentes ambientes SAS/ETS An lises econ micas e de s ries temporais SAS/FSP - Processador de textos SAS/GIS - Geoprocessamento SAS/GRAPH - Gr fico SAS/IML - Linguagem matricial interativa SAS/INSIGHT M dulo interativo do tipo "point and click" SAS/OR - Pesquisa Operacional SAS/QC - Controle de qualidade SAS/STAT - Estat stica SAS/SHARE Sistema multiusu rio
I.2. Janelas do SAS
O SAS tem a caracter stica de trabalhar simultaneamente com 3 janelas, com finalidades espec ficas, que s o: EDITOR DE PROGRAMAS "PGM" Janela onde o usu rio edita os programas. Quando o programa processado (RUN), o SAS gera o conte do das janelas LOG e OUTPUT.
1
Departamento de Ci ncias Exatas - FCAV/UNESP - Campus de Jaboticabal.
2
LOG Janela onde apresentada uma depura o do programa, ou seja, informa es sobre o processamento como: tempo gasto; listagem de erros, se houver; etc. (gerada pelo SAS). OUTPUT Janela para a sa da dos resultados (gerada pelo SAS). A tela de abertura do SAS, quando as janelas s o apresentadas em colunas, mostrada na .
. Tela de abertura do SAS.
A op o WINDOW, na barra de menus, permite minimizar as janelas ou apresent -las de diferentes formas, ou seja: em cascata (Cascade), em forma de ladrilhos em colunas (Tile) ou reorganiza no formato padr o do SAS (Resize). Permite tamb m acessar cada uma das janelas. Ver a .
. Op o WINDOW da Barra de Menus.
3
Acessos s janelas, bem como outras opera es, podem ser feitos utilizando-se as Teclas de Atalhos, como: CTRL + E Limpa a Janela. F1 HELP. F4 Recarrega o ltimo programa rodado (Janela PGM). F9 Janela com as defini es das fun es do teclado (KEYS). Pode ser usado para redefinir essas fun es. F12 Limpa a janela (n o padr o do SAS, precisa ser definido na janela KEYS). Essas e outras Teclas de Atalho podem ser vistas na Janela KEYS. Ver a :
. Teclas de Atalho do SAS.
Toda vez que o Programa existente na janela PGM rodado ("RUN"), s o geradas linhas nas janelas LOG e OUTPUT, conforme apresentado na .
LOG PGM
RUN
OUTPUT
. Esquema usado pelo SAS para gerar as Janelas LOG e OUTPUT.
4
interessante destacar que: 1. Ao rodar um programa, a) caso as janelas LOG e OUTPUT n o estejam limpas, os resultados ser o acumulados nos conte dos dessas janelas. b) A janela PGM limpa automaticamente. Assim sendo, toda vez que um programa for rodado e precisar ser editado, para a corre o de algum erro ou para a inclus o de outros comandos, deve-se: Acessar a janela OUTPUT e apag -la .(F7 / F12), Acessar a janela LOG e apag -la .(F6 / F12), Acessar a janela PGM e recarregar o ltimo programa rodado .(F5 / F4). 2. O conte do de cada janela salvo individualmente. O SAS usa as extens es: .SAS para os programas (janela PGM), .LOG para o conte do da janela LOG, .LST para o conte do do OUTPUT .
I.3. Barra de ferramentas
A maioria das ferramentas dispon veis na Barra de Ferramentas do SAS () s o conhecidas pelos usu rios do Microsoft Word.
HELP SAS/ASSISTENTE PASTAS PROMPT DO DOS DESFAZER COLAR COPIAR RECORTAR IMPRIMIR ARQUIVO NOVO ABRIR ARQUIVO RODAR (RUN) COMANDOS DE OPERA O . Barra de Ferramentas do SAS.
5
Na ferramenta "Comandos de Opera o" s o permitidos comandos de opera es nas janelas como: CLEAR: Limpa a janela , TOP: Vai para o in cio da janela, BOTTOM: Vai para o fim da janela, LEFT: Rola a janela esquerda, RIGHT: Rola a janela direita, RUN: Roda o programa (s na janela PGM), BYE ou ENDSAS: Sai do SAS, Nomes de Janelas, para acess -las, como: LOG, OUT, PGM, KEYS, HELP (a janela KEYS a que contem as teclas de atalho), etc. medida que v o sendo usados comandos na ferramenta "Comandos de Opera o", o SAS vai criando uma lista que, ao repetir um comando j usado basta selecion -lo. A lista obtida clicando na seta direita da ferramenta. Veja o exemplo na .
. Lista de comandos SAS.
I.4. Help do SAS
O SAS possui um Aux lio completo e interativo. Para utiliz -lo, basta acessar a janela HELP pela tecla F1, ou pela Barra de Ferramentas.
6
II. Programa o SAS
Os programas SAS s o escritos na janela PGM, em linhas de 256 caracteres. Os comandos de programa o terminam com ponto e v rgula (;), podendo ter tantos comandos por linha quantos se desejar, desde que respeitado o tamanho da linha. Os programas SAS possuem duas fases: a Fase 1, que constitui na cria o do arquivo SAS (SAS-DATA-SET) e a Fase 2, que inclui os Procedimentos do SAS (PROC) para trabalhar com os dados (impress o, representa es gr ficas, an lises, etc). Veja o esquema da .
Janelas como
Fase 1
SAS-DATA-SET
Fase 2
OUTPUT, GRAPHICS, etc
Ou
ARQUIVOS DE DADOS
. Fases de um programa SAS.
O SAS-DATA-SET o arquivo de dados a ser usado pelo SAS. Ele formado por linhas e colunas, sendo nas colunas as vari veis e nas linhas os registros. Exemplo: Nome Maria Jos Rosa Jo o Endere o Rua 8, 567 Rua Tiradentes, 123 Av. Maraj s, 750 Rua Poty, 1250 Cidade Itu Mat o Jaboticabal Maring Estado SP SP SP PR Peso 59.50 85.00 . 79.00
Observa o perdida Ponto para separar as casas decimais
II.1. Alguns comandos do SAS
OPTIONS: Define, dentre muitas op es, par metros para configurar a p gina do OUTPUT. Ex: OPTIONS LS=80 PS=66 NOCENTER NODATE; LS = Line Size e PS = Page Size
7
Obs: a) Os par metros n o definidos assumem os valores "Default". b) Os valores dos par metros definidos com o comando OPTIONS, s s o v lidos para o programa em quest o. c) Para mudar o "Default" use: GLOBAL / OPTIONS / GLOBAL OPTIONS. TITLE: Define a n- sima (1 n 10) linha do cabe alho para o OUTPUT. sintaxe: TITLE[n] t tulo ; Ex: TITLE1 An lise do Experimento de Fertilidade; TITLE3 Coleta do Ano 1998; Obs: a) Se for omitido o "n" o 1o TITLE define a 1 linha do Cabe alho, o 2o a 2 linha, e assim por diante. b) Se o cabe alho n o for definido, o SAS usa o definido como "Default". c) Para mudar o "Default" use: GLOBAL / OPTIONS / TITLE. FOOTNOTE: Define a n- sima (1 n 10) linha do rodap para o OUTPUT. Uso equivalente ao uso do TITLE. COMENT RIOS: Usados na documenta o dos programas. sintaxe: * coment rio ; ou: /* coment rio */ Obs: a) Os coment rios n o s o executados. b) Os coment rios podem ser colocados em qualquer parte do programa. c) Pode-se usar tantos coment rios quantos se desejar. DATA: Atribui nome ao SAS DATA SET. sintaxe: DATA [ nome do SAS DATA SET ]; Obs: a) O nome do SAS DATA SET pode ser: simples quando apenas o nome do arquivo especificado (Ex: NNNN). Neste caso ser criado um arquivo tempor rio (at fechar o SAS), de nome NNNN, na pasta SASWORK, tamb m tempor ria. composto quando o nome tem duas partes, separadas por "ponto" (Ex: CCCC.NNNN). Neste caso ser criado um arquivo permanente, de nome NNNN, no caminho nomeado por CCCC. b) O nome do SDS deve ter de 1 a 8 caracteres alfanum ricos (alfab ticos ou num ricos) e o primeiro deve ser alfab tico. c) Se o nome for omitido, o SAS usa DATA1 para o 1o, DATA2 para o 2o, e assim por diante.
8
LIBNAME: Atribui nome a um caminho. Ex: LIBNAME CAM "C: SAS"; Com este comando, o caminho C: SAS nomeado por CAM. FILENAME: Atribui nome a um arquivo. Ex: FILENAME ARQ "C: SAS DADOS.ASC"; Com este comando, o arquivo C: SAS DADOS.ASC nomeado por ARQ. RUN: Determina ao SAS para Rodar (Executar) o programa at este ponto. COMANDOS ARITM TICOS: Usados para criar novas vari veis. Sintaxe: NOME DA VARI VEL = EXPRESS O ; Ex: PORCG=PGORD/PLEITE*100; As express es podem conter: Constantes, Vari veis, Operadores e Fun es. Constantes: Podem ser: Num ricas, Caracter, Data e Hora. Num ricas: Sistema decimal no modo padr o (Ex: -125.45) ou em nota o cient fica (Ex: -1.456E-03); sistema octal (Ex: 0B123X). Caracter: At 200 caracteres entre aspas (Ex: "Femea"). Data: Data seguida por D, e entre aspas (Ex: "25/10/98D"). Hora: Hora seguida por T, e entre aspas (Ex: "10:15:45T"). Para maiores detalhes consultar o HELP. Vari veis: As vari veis podem ser num ricas ou caracter. Os nomes das vari veis devem ter de 1 a 8 caracteres alfanum ricos (alfab ticos ou num ricos) e o primeiro deve ser alfab tico. Operadores: Os mais usuais s o os operadores aritm ticos, l gicos e de compara o. Operadores aritm ticos: Operador + * / * Opera o Adi o Subtra o ou Nega o Multiplica o Divis o Potencia o Exemplos Usual SAS A+B A+B A-B ou -B A-B ou -B A.B A*B A:B A/B AB A*B
9
Operadores l gicos: Operador & ou AND ou OR ou NOT Opera o Usual AeB AouB N o A Exemplos SAS A&B ou A AND B A B ou A OR B A ou NOT A
Nega o
Operadores de compara o: Operador = ou EQ ou GT ou LT = ou GE = ou LE = ou NE Opera o Igual a Maior que Menor que Maior ou igual que Menor ou igual que Diferente de Usual A=B A B A B AB AB AB Exemplos SAS A=B ou A EQ B A B ou A GT B A B ou A LT B A =B ou A GE B A =B ou A LE B A =B ou A NE B
Para maiores detalhes consultar o HELP.
Fun es: As fun es SAS s o escritas na forma: Fun o(lista de argumentos separados por v rgulas) Existe no SAS um n mero muito grande de fun es dispon veis, como exemplos: SQRT(X) calcula a raiz quadrada de X, MDY(MES,DIA,ANO) resulta uma data correspondente ao Dia, M s e Ano especificados como argumentos. Obs: Para armazenar datas o SAS armazena um n mero que corresponde ao total de dias entre a data e o 1 dia do s culo. Para maiores detalhes consultar o HELP, usando a seq ncia: 6.11: HELP / Extended help / SAS Language / SAS Functions. 6.12: HELP / Extended help / SAS System help: Main Menu / SAS Language / SAS Functions.
II.2. Algumas estruturas usadas na programa o IF . THEN . ELSE: Usado para testar se uma condi o verdadeira ou falsa. Sintaxe: IF condi o THEN comando ; [ELSE comando ;]
10
Ex: IF MES 7 THEN SEMESTRE="PRIMEIRO"; ELSE SEMESTRE="SEGUNDO"; Obs: Se o ELSE for omitido, o SAS executa o pr ximo comando na seq ncia. DO . END: Usado para controle de "loops", ou seja, para executar a mesma seq ncia de comandos um n mero finito de vezes. Sintaxe: DO x=a TO b [BY c]; Comando 1; Comando 2; . END; Ex: DATA EXDO; DO X=5 TO 30 BY 5; X2=X*2; X3=X*3; OUTPUT; END; Com esse "looping", teremos no SAS-DATA-SET Obs . 1 2 3 4 5 6 X 5 10 15 20 25 30 X2 25 100 225 400 625 900 X3 125 1.000 3.375 8.000 15.625 27.000
II.3 Algumas formas para criar o SAS-DATA-SET
Quando os dados s o colocados no pr prio programa. Seq ncia: DATA sds ; INPUT lista de vari veis ; CARDS; dados ; Define o nome do SAS-DATA-SET. Informa as vari veis a serem lidas. Informa que iniciar o os dados. Informa que terminaram os dados.
11
Importar arquivo do Excel Seq ncia: ROC IMPORT OUT=SDS REPLACE; SHEET="PLANILHA$"; GETNAMES=YES; RUN; DATAFILE="ARQ.XLS" DBMS=EXCEL2000
Onde: SDS o nome do SAS DATA SET a ser criado ARQ. XLS o arquivo Excel a ser importado (especificando o caminho onde ele se encontra). PALNIHA o nome da planilha. Importar arquivo ASCII (American Standard Code Interchange Information). Seq ncia: DATA sds ; INFILE " arquivo ASC "; INPUT lista de vari veis ; Comando INPUT O comando INPUT relaciona os nomes das vari veis a serem criadas no SAS-DATA-SET. Ele pode ser de uma das formas: listado, colunado ou formatado. Listado: quando se especifica no INPUT apenas a lista de vari veis (nomes separados por pelo menos um espa o em branco). Usado quando os dados a serem lidos est o separados por, pelo menos, um espa o em branco. Ex: INPUT NOME$ PESO ALTURA; Colunado: quando se especifica a vari vel e a coluna inicial e final onde se encontram os dados a serem lidos. Ex: INPUT NOME$ 1-20 PESO 20-25 ALTURA 25-30; Formatado: quando se especifica a vari vel e formato que o dado a ser lido deve ser considerado. Ex: INPUT NOME$ 1-20 DATANAS DDMMYY6. PESONAS 8.2 DDMMYY6. especifica que a data a ser lida cont m 2 caracteres para o dia, 2 para o m s e 2 para o ano, num total de 6. 8.2 especifica que o peso a ser lido tem 8 casas, sendo 2 decimais. Define o nome do SAS-DATA-SET. Arquivo ASC a ser importado. Lista de vari veis importadas.
12
Obs.: Quando se usa o INPUT, o n mero de valores por linha de dados deve coincidir com o n mero de vari veis do INPUT, a menos que a lista de vari veis seja seguida por @. Exemplo: DATA EXEMPLO; INPUT X Y; CARDS; 10 20 12 22 15 35 ; DATA EXEMPLO; INPUT X Y@; CARDS; 10 20 12 22 15 35 ;
II.4. Procedimentos do SAS
Existem v rios Procedimentos, dentro de cada m dulo, dispon veis a usu rios de uma grande diversidade de reas de aplica es. Estrutura b sica dos procedimentos
PROC NOME op es ;
A 1 linha de cada procedimento tem a seguinte estrutura: Lista de Op es. Nome do Procedimento. Prefixo de todo Procedimento (PROCEDURE).
Os procedimentos podem incluir outras linhas para especifica es especiais. A estrutura geral de um procedimento : Uma das op es : DATA = Arquivo SAS ; Especifica o arquivo SAS que ser usado. Se for omitido, o SAS usa o ltimo criado
PROC NOME op es ;
. VAR lista de vari veis ; BY lista de vari veis ; CLASS lista de vari veis ; ID lista de vari veis ; TITLE "t tulo" ; FOOTNOTE "rodap " ; WHERE condi o ; .
Opcionais e, no geral, independem da ordem.
OUTPUT OUT= SDS VS = VU ;
RUN;
13
Comandos que podem ser usados nos procedimentos
VAR lista de vari veis ; Especifica as vari veis para as quais ser executado o procedimento. BY lista de vari veis ; Especifica que o procedimento deve ser executado para cada valor da(s) vari vel(is) especificada(s). Este comando exige que o SAS-DATA-SET esteja classificado por essa(s) variavel(is). CLASS lista de vari veis ; Especifica que o procedimento deve ser executado para cada valor da(s) vari vel(is) especificada(s). ID lista de vari veis ; Especifica a vari vel de identifica o dos registros. Se n o for especificado, o SAS usa o n mero do Registro. TITLE "t tulo" ; Especifica o t tulo para todas as p ginas geradas por este procedimento. FOOTNOTE "rodap ; Especifica o rodap para todas as p ginas geradas por este procedimento. WHERE condi o ; Especifica que o procedimento deve ser executado somente para os registros para os quais a condi o for satisfeita.
OUTPUT OUT= SDS VS = VU ;
Coloca no SAS-DATA-SET "SDS", al m das vari veis do SAS-DATA-SET em uso, vari veis criadas pelo SAS "VS" (cujos nomes s o criados pelo SAS e devem ser especificados corretamente), com os nomes das vari veis do usu rio "VU".
III. Tutorial do SAS
O SAS possui um tutorial bastante interessante para os principiantes. S o algumas aulas que permitem aos usu rios uma familiariza o com a terminologia, alguns conceitos b sicos e a estrutura do Sistema. O Tutorial um m dulo parte, que precisa ser selecionado durante a instala o do SAS. Para entrar no Tutorial siga os passos: 1) Selecione a op o de menu: Help / Online training. Com esta op o, ser apresentada uma lista dos cursos dispon veis. 2) Selecione o curso e a op o "Start Course".
14
Com esta op o, ser apresentada uma lista de li es do curso selecionado, e as poss veis se es (Instructions - que corresponde s instru es da li o, Summary - que corresponde a um resumo da li o e Quiz - que um teste de avalia o da li o). 3) Selecione a li o e a se o, e siga em frente.
IV. Programas Exemplos
O SAS possui uma lista de programas prontos (programas exemplos) que contribuem em muito para o aprendizado. Para acessar esta lista de programas, siga os passos: 1) 2) 3) 4) 5) 6) 7) Selecione a op o de menu: Help / Sample Programs. Selecione a op o: Conte do / SAS Sample Library. Selecione o m dulo do qual deseja o exemplo. Selecione o programa. Marque o programa como um bloco e copie (jogue para a rea de transfer ncia). Acesse a janela "Program Editor", e nela cole o conte do da rea de transfer ncia. Rode o Programa (Run).
15
V. INFORMA ES (Procedimentos e Comandos) separadas por aula
V.1. INFORMA ES NECESS RIAS PARA A AULA 1
COMANDOS DROP: especifica a lista de vari veis a serem eliminadas do SAS-DATA-SET. As vari veis n o inclu das na lista ser o mantidas. Sintaxe: DROP lista de vari veis ; KEEP: especifica a lista de vari veis a serem mantidas do SAS-DATA-SET. As vari veis n o inclu das na lista ser o eliminadas. Sintaxe: KEEP lista de vari veis ; LABEL: atribui label's a vari veis. Sintaxe: LABEL var1 ="label1" var2 ="label2" . ; Ex.: LABEL X="DOSES DE N" Y="PRODU O"; PROCEDIMENTOS
PROC CONTENTS
Finalidade: Apresenta uma descri o do SAS-DATA-SET. Sintaxe: PROC CONTENTS op es ;
PROC PRINT
Finalidade: Imprimir o SAS-DATA-SET no OUTPUT. Sintaxe: PROC PRINT op es ; Algumas op es s o: NOOBS N o imprime o n mero da observa o (Registro). DOUBLE Imprime com espa amento duplo. ROUND Imprime os n meros reais arredondados para 2 casas decimais. LABEL Imprime tendo como cabe alho das colunas os label's no lugar dos nomes das vari veis.
PROC SORT
Finalidade: Classificar o SAS-DATA-SET.
16
Sintaxe: PROC SORT op es ; BY [DESCENDING] Var1 [DESCENDING] Var2 .; Obs:. As vari veis precedidas por DESCENDING s o classificadas em ordem decrescente, caso contr rio, em ordem crescente. Algumas op es: NODUP Elimina os registros para os quais o(s) valor(es) da(s) chave(s) de classifica o forem iguais.
PROC MEANS
Finalidade: Calcular estat sticas descritivas de vari veis num ricas. Sintaxe: PROC MEANS op es lista de estat sticas ; Algumas op es: ALPHA=valor Especifica o n vel de signific ncia para o intervalo de confianca. Algumas estat sticas: N N mero de observa es. NMISS N mero de observa es perdidas. MEAN - M dia aritm tica. VAR Vari ncia. STD - Desvio padr o. STDERR - Erro padr o da m dia. MIN - Valor m nimo. MAX - Valor m ximo. CLM - Intervalo de confian a para a m dia. RANGE - Amplitude (M ximo-M nimo). T - Teste t para a hip tese H0:m dia=0 vs H1:m dia0. PRT - N vel M nimo de signific ncia para o teste t. COMO CRIAR UM ARQUIVO ASCII, A PARTIR DO EXCEL a) b) c) d) e) Digite o arquivo, uma vari vel em cada coluna, sem t tulos das colunas. Preencha as caselas vazias com v rgulas " ,". Salve o arquivo especificando o tipo: Texto (OS/2 ou MS-DOS)(*.txt). Feche o EXCEL. Entre no EDIT do DOS. INICIAR / PROGRAMAS / PROMPT MS-DOS / EDIT: Abrir o Arquivo. Trocar as v rgulas por pontos. Salvar o arquivo. Sair do Edit. f) Sair do DOS (EXIT).
17
LISTA DE EXERC CIOS - AULA 1 1. Fazer um programa no SAS para: a) Colocar coment rios informando: o n mero da lista, do exerc cio, a data e o nome do programador. b) Definir as op es para o OUTPUT: tamanho da linha=78, tamanho da p gina=64. c) Definir o Cabe alho: CURSO SAS - AN LISE DE DADOS. d) Definir o Rodap : FCAV/UNESP. d) Criar um arquivo SAS (SAS-DATA-SET) tempor rio, a partir dos dados da Tabela a seguir, usando a op o CARDS e digitando todas as vari veis. TRAT. T1 T2 T3 1 35 40 39 2 19 35 27 REPETI ES 3 31 46 20 4 15 41 29 5 30 33 45
f) Imprimir o arquivo. g) Mostrar uma descri o do conte do do arquivo. 2. Fazer um programa SAS para: a) Colocar coment rios informando: o n mero da lista, do exerc cio e a data. b) Definir as op es para o OUTPUT: tamanho da linha=78, tamanho da p gina=64. c) Criar um arquivo SAS, a partir do arquivo L1E2.DAT, que um arquivo ASCII, e est codificado como segue: COLUNAS CAMPO 1-4 vaca 5-8 paiv 9-12 maev 13-14 diap 15-16 mesp 17-18 anop 19-20 orparto 21 sexo 22-23 anod 24-25 mesd 26-27 diad 28-33 pesonasc 34-39 pesodesm Obs: Sexo = M ou F e Pesos com duas casas decimais d) Imprimir o arquivo.
18
e) Criar 4 novas vari veis: Idade desmama, Ganho de peso total at a desmama, Ganho de peso di rio at a desmama, Per odo do Nascimento ( GUAS out-mar, SECA abr-set). f) Eliminar do arquivo SAS as vari veis utilizadas apenas como valores intermedi rios. g) Classificar o arquivo pela vari vel sexo. h) Classificar o arquivo pelas vari veis: sexo e per odo do nascimento. 3. Fazer um programa no SAS para: a) Colocar coment rios informando: o n mero da lista, do exerc cio, a data e o nome do programador. b) Definir as op es para o OUTPUT: tamanho da linha=78, tamanho da p gina=64. c) Criar um arquivo SAS, permanente, na pasta C: SAS, a partir do arquivo L1E3.DAT, no drive A, que um arquivo ASCII, e cont m 5 vari veis: Ra as, Origem, Repeti es, Peso ao nascer (PN) e Ganho de peso em 30 dias (GP30). d) Estabelecer "label's" associados s vari veis. e) Imprimir o arquivo. f) Salvar o Programa. 4. Fazer um programa no SAS para, usando o arquivo SAS criado anteriormente, a) Calcular a m dia, vari ncia e desvio padr o para as vari veis PN e GP30. b) Calcular as m dias para PN e GP30, por ra a. c) Calcular as m dias para PN e GP30, por ra a e origem. 5. Fazer um programa SAS para tabular a fun o y=10 + 0.5 x + 2 x2, -5 x 5, para x variando de 0.5 em 0.5 (Usar comandos DO . END). 6. Fazer um programa no SAS para criar um Arquivo SAS, a partir dos dados do Exerc cio 1, considerando-se que a segunda repeti o do tratamento 1 tenha sido perdida, e digitando apenas os valores observados (Usar comandos DO . END). 7. Fazer um programa no SAS para criar um Arquivo SAS, a partir dos dados do Exerc cio 1, importando os dados do EXCEL. 8. Fazer um programa no SAS para criar um Arquivo SAS, a partir dos dados do Exerc cio 1, importando o arquivo ASC.
19
V.2. INFORMA ES NECESS RIAS PARA A AULA 2 Comandos
SET: Carrega os registros (linhas) no SAS-DAT-SET. Sintaxe: SET lista de Arquivo SAS ; Esse comando normalmente utilizado para reabrir um SAS-DATA-SET ou para concatenar linhas. Ex. 1. Reabrir o Sas-Data-Set de nome SDS DATA SDS; SET SDS; . Ex. 2. Criar um Sas-Data-Set de nome SDT contendo as linhas do Sas-Data-Set SDS1 seguida das linhas do SDS2 DATA SDT; SET SDS1 SDS2; . Obs.: Neste caso SDS1 e SDS2 devem conter as mesmas vari veis. MERGE: Carrega vari veis (colunas) no SAS-DAT-SET. Sintaxe: MERGE lista de Arquivo SAS ; BY vari vel ; Ex. Sejam os arquivos SAS:
SDS1 Nome Ant nio Maria Pedro Rosa Sexo M F M F SDS2 Fun o Aux. Escrit rio Secret ria Servente Cozinheira Nome Ant nio Maria Rosa Sal rio 600.00 800.00 300.00
Com os comandos: PROC SORT DATA=SDS1; BY NOME; RUN; PROC SORT DATA=SDS2; BY NOME; RUN; DATA SDS; MERGE SDS1 SDS2; BY NOME;
20
Resulta o arquivo SAS :
SDS Nome Ant nio Maria Pedro Rosa Sexo M F M F Fun o Aux. Escrit rio Secret ria Servente Cozinheira Sal rio 600.00 800.00 . 300.00
Obs.: Os arquivos SDS1 e SDS2 devem estar classificados pela vari vel NOME.
INFILE " arquivo ASC " op es ; Uma op o a LRECL, que define o Tamanho L gico do Registro "LOGICAL RECORD LENGTH". Se o tamanho n o for definido, o SAS usa o tamanho 256.
21
LISTA DE EXERC CIOS - AULA 2 1. Fazer um programa no SAS para: a) Colocar coment rios informando: o n mero da lista, do exerc cio e a data. b) Definir as op es para o OUTPUT: tamanho da linha=78, tamanho da p gina=64. e) Criar um arquivo SAS (SAS-DATA-SET), a partir do Arquivo L2E1.DAT, que um arquivo ASCII e cont m as vari veis: A B C D E Y1-Y32. Nota: registro muito grande - usar a op o "lrecl=n " no INFILE. 2. Fazer um programa no SAS para: a) Colocar coment rios informando: o n mero da lista, do exerc cio, a data e o nome do programador. b) Definir as op es para o OUTPUT: tamanho da linha=78, tamanho da p gina=64, numerar as p ginas a partir do n mero 1. c) Criar um arquivo SAS (SAS-DATA-SET) tempor rio, importando direto do Excel os dados do arquivo Alunos.xls, planillha Plan1; d) Renomear as vari veis: Alunos, Prova1, Prova2, Prova3 e Exerc cios para Nomes, P1, P2, P3 e Ex, respectivamente; e) Calcular as vari veis: MED - MED=(2*P1+3*P2+3*P3+2*Ex)/10 CONC - sendo CONC=A se MED7; CONC=B se 5MED 7 e CONC=C se MED 5. f) Criar no disco do drive A: um arquivo ASC II, de nome Notas ASC.txt, com todas as vari veis.
22
V.3. INFORMA ES NECESS RIAS PARA A AULA 3 Procedimentos PROC FREQ
Finalidade: Criar tabelas de freq ncia. A Tabela conter a freq ncia, as porcentagens em rela o ao total geral, as porcentagens em rela o ao total das linhas e as porcentagens em rela o ao total de colunas. Sintaxe: PROC FREQ op es1 ; TABLE vari vel A [* vari vel B ] / op es2 ; Algumas das op es1 s o: DATA= SDS - especifica O Sas-Data-Set a ser usado PAGE especifica para imprimir, no OUTPUT, uma tabela por p gina. Algumas das op es2 s o: NOFREQ N o apresenta as freq ncias NOPERCENT N o apresenta as porcentagens em rela o ao total geral NOROW N o apresenta as porcentagens em rela o ao total de linhas NOCOL N o apresenta as porcentagens em rela o ao total de linhas EXPECTED Apresenta os valores esperados CHISQ Realiza o teste Qui-Quadrado para a independ ncia das vari veis EXACT - Realiza o teste Exato de Fischer para a independ ncia das vari veis
PROC TTEST
Finalidade: Teste t de Student para compara o das m dias de 2 grupos. Sintaxe: PROC TTEST op es ; CLASS vari vel ; Vari vel que classifica os grupos
Uma das op es : DATA= SDS - especifica O Sas-Data-Set a ser usado
23
LISTA DE EXERC CIOS - AULA 3 1. Fazer um programa no SAS para: a) Ler os dados L3E1.DAT (Di metro do fol culo 1 a 3; Qualidade do fol culo 1 a 3 e qualidade do o cito 1 a 2). Observe que os dados n o est o separados por espa os. b) Fazer o Teste Qui-quadrado. 2. Fazer um programa no SAS para fazer o teste Qui-quadrado e o teste Exato de Fisher para a tabela de conting ncia: RA A Charolesa Zebu RESULTADO DO ACASALAMENTO fecundo infecundo 52 128 77 83
3. Digitar os Dados a seguir no Excel e criar um arquivo ASC (L3E3.TXT)
Y1 Y2 72,5 72 69 75 69,1 75 70,8 71,2 73 70 67,1 71 72 73 70,9 71 72,9 69,9 37 71,1 71,9 73 68 69 69,9 70,1 71 74 68,2 68,9 70 70 71,1 74 72 72
4. Fazer um programa no SAS para: a) Colocar coment rios informando: o n mero da lista e do exerc cio, a data e o nome do programador. b) Definir as op es para o OUTPUT: Tamanho da linha=78, tamanho da p gina=64. c) Criar um arquivo SAS, a partir do arquivo L3E3.TXT. d) Imprimir o arquivo. e) Obter o intervalo de confian a para a m dia de Y1 (Y1 ). f) Testar a Hip tese: H0: Y1 = 70 . 5. Fazer um programa no SAS para: a) Colocar coment rios informando: o n mero da lista e do exerc cio e a data. b) Definir as op es para o OUTPUT: Tamanho da linha=78, tamanho da p gina=64. c) Criar um arquivo SAS a partir dos dados: T1 T2 760 758 755 748 758 757 761 753 755 755
d) Imprimir o arquivo. e) Aplicar o test t para testar a hip tese: H0: T1 = T2 . c) Substituir as 2 primeiras repeti es de T2 por 708 e 798, respectivamente, e ver o que acontece.
24
V.4. INFORMA ES NECESS RIAS PARA A AULA 4 Procedimentos
PROC UNIVARIATE Finalidade: Apresenta as estat sticas descritivas necess rias para um diagn stico da distribui o dos dados. Sintaxe: PROC UNIVARIATE op es ; Algumas op es: NORMAL Faz o teste de normalidade. Teste de Shapiro-Wilk (W) se o n mero de observa es for 2000, caso contr rio o teste de Kolmogorov (D). PLOT Gera um gr fico de ramos e folhas que permite interpretar certas caracter sticas da distribui o e um gr fico contendo os valores esperados, caso a distribui o for normal (+), e os valores observados (*). PROC INSIGHT Finalidade: Entra no modo interativo do SAS. 1. Sintaxe via programa: PROC INSIGHT DATA= SDS ; DIST Var ; RUN; 2. Sintaxe via menu: Seleciona as op es: Globals / Analyze / Interactive data analysis a) Sele o do arquivo: Selecione o caminho. Campo LIBRARY. Selecione o arquivo. Campo DATA SET. Selecione Open b) Selecione na planilha a vari vel que vai estudar Um clique no cabe alho da Coluna c) Selecione as op es: Analyze / Distribution(Y)
At este ponto, em qualquer uma das op es chegar o no mesmo local Aqui pode-se pedir, entre muitas coisas: Teste de Normalidade: Curves / Test for Distribution Gr fico da normal: Curves / Parametric density Tabela de Freq ncias: Tables / Frequence table Intervalo de confian a para a m dia: Tables / C. L. for means
25
LISTA DE EXERC CIOS - AULA 4 1. Fazer um programa no SAS para: a) Ler os dados L3E3.TXT (vari veis Y1 Y2). b) Fazer teste de normalidade dessas vari veis (Usando o PROC UNIVARIATE e usando o SAS INSIGHT). 2. Fazer um programa no SAS para: a) Gerar 1000 dados com distribui o Normal com m dia 0 e Vari ncia 1. c) Fazer uma an lise explorat ria da distribui o (Usando o PROC UNIVARIATE e usando o SAS INSIGHT).
26
V.5. INFORMA ES NECESS RIAS PARA A AULA 5
Os gr ficos no SAS podem ser feitos no OUTPUT ou numa janela apropriada GRAPHICS. Na janela GRAPHICS os gr ficos s o apresentados individualmente e com maior precis o que no OUTPUT.
Gr ficos de dispers o
Os procedimentos utilizados para gr ficos de dispers o s o: PROC PLOT para gr ficos no OUTPUT e PROC GPLOT para gr ficos na janela GRAPHICS. PROC PLOT Finalidade: Editar gr ficos de dispers o no OUTPUT. Sintaxe: PROC PLOT op es1 ; PLOT Vertical * Horizontal [="caracter"] / op es2 ; Algumas das op es1 s o: caracter a ser usado NOLEGEND N o apresenta as legendas do gr fico na representa o dos HPERCENT Especifica a porcentagem da p gina, pontos na horizontal, deve ser usada pelo gr fico VPERCENT Especifica a porcentagem da p gina, na vertical, deve ser usada pelo gr fico Algumas das op es2 s o: VPOS=N especifica o n mero de linhas que ser o usadas HPOS=N especifica o n mero de colunas que ser o usadas HAXIS = li TO ls BY inc - especifica a escala do eixo horizontal (X), sendo "li" o limite inferior, "ls" o limite superior e "inc" o incremento VAXIS = li TO ls BY inc - especifica a escala do eixo vertical (Y), sendo "li" o limite inferior, "ls" o limite superior e "inc" o incremento HREF = n1 n2 . coloca linhas de refer ncias verticais, nas posi es n1, n2, etc, do eixo horizontal VREF = n1 n2 . coloca linhas de refer ncias horizontais, nas posi es n1, n2, etc, do eixo vertical OVERLAY usado para sobrepor 2 ou mais gr ficos VZERO Faz com que a origem do eixo vertical seja no ponto zero HZERO Faz com que a origem do eixo horizontal seja no ponto zero
27
PROC GPLOT Finalidade: Editar gr ficos de dispers o na janela GRAPHICS. Sintaxe: PROC GPLOT op es1 ; PLOT Vertical * Horizontal / op es2 ; SYMBOL[n] op es3 ; 1 primeira sequ ncia de pontos 2 Segunda etc. Uma das op es1 : UNIFORM Especifica que todos os gr ficos feitos por este procedimento devem ter a mesma escala Algumas das op es2 s o: Al m das op es: VPOS; HPOS; HAXIS; VAXIS; HREF; VREF; OVERLAY; HZERO e VZERO, descritas no PROC PLOT, pode-se usar: GRID Coloca linhas de grade (horizontais e verticais) FRAME Coloca um contorno na rea do gr fico LEGEND Inclui a legenda no gr fico Algumas das op es3 s o: COLOR = red blue green . Especifica a cor dos s mbolos INPERPOL = none join R spline . - Especifica a forma de liga o dos pontos, que pode ser, respectivamente, nenhum, linha segmentada, equa o de regress o, curva suavizada, etc. VALUE = plus dot star . - Especifica a forma do s mbolo, que pode ser, respectivamente, +, , etc. WIDTH = 1, 2, 3, . - Especifica a espessura da linha HEIGHT = 1, 2, 3, . - Especifica o tamanho dos s mbolos
Outros gr ficos
Os procedimentos utilizados s o: PROC CHART ou GCHART para gr ficos no output ou na janela GRAPHICS, respectivamente. VBAR ou HBAR ou PIE, etc define o tipo do gr fico, que pode ser: Barras verticais, Barras Horizontais, tipo Pizza, etc. Histograma (PROC GCHART) Exemplo 1 Fazer um histograma, com 10 classes de freq ncias, por sexo.
DATA EX1; INPUT SEX$ PESO @; CARDS; M 18.3 F 22 M 19 F 26 M 20 F 15.5 M 25.5 F 12 M 18 F 21.7 M 13.5 M 16 M 24
28
M 22 F 23.2 M 20 F 21 M 31 F 28 F 20 M 13.5 F 23 M 19 M 18 M 16 F 17 ; RUN; GOPTIONS DEVICE=WIN; PATTERN V=SOLID COLOR=BLUE; PROC GCHART; VBAR PESO/GROUP=SEX LEVELS=10 ; RUN;
Gr ficos de 3 dimens es (PROC G3D) O procedimento utilizado : PROC G3D para gr ficos na janela GRAPHICS Exemplo 2. Fazer o gr fico da equa o Z=X2 + Y2 , -5 X 5 E 5 Y 5. DATA EX2; DO X=-5 TO 5 BY 0.2; DO Y=-5 TO 5 BY 0.2; Z=X*2+Y*2; OUTPUT; END; END; PROC G3D; PLOT X*Y=Z/GRID CAXIS=RED CBOTTOM=BLUE; RUN;
29
LISTA DE EXERC CIOS - AULA 5 1. Fazer um programa SAS para ler os dados da Tabela abaixo e representar graficamente o perfil dos 3 tratamentos ao longo do tempo. Usar as op es que julgar serem interessantes. Semanas Tratamento 1 2 3 4 5 6 7 8 9 10 TR1 10 11 11 11.5 12 11 12.3 12.5 12.3 12.5 TR2 12 12.1 12.5 12.3 12.4 13 13.1 12.9 13.1 13.4 TR3 13.1 13 12.9 12.5 11.7 12.5 11.5 11 10.5 10 2. Fazer um programa SAS para gerar 100 dados com distribui o normal e fazer um histograma (gr fico de barras verticais). Usar as op es que voc julgar serem interessantes. 3. Fazer um programa SAS para fazer o gr fico da equa o: Z = 1 / (X2 + Y2 + 0.5), 10 X 10 e 10 Y 10. Usar as op es que voc julgar serem interessantes. -
30
V.6. INFORMA ES NECESS RIAS PARA A AULA 6 Regress o Linear
O procedimento utilizado para regress o linear e o PROC REG:
PROC REG
Finalidade: Ajuste da equa o de regress o linear. Sintaxe: PROC REG op es1 ; MODEL Var. Dep = Lista Var. Indep. / op es2 ; RUN; A Lista Var. Indep. tal que: Se conter apenas 1 vari vel Reg Linear simples Se conter 2 ou mais vari veis Reg. linear M ltipla Algumas das op es2 s o: P apresenta os valores estimados (preditos) CLI apresenta os intervalos de confian a dos valores preditos CLM apresenta os intervalos de confian a das m dias SELECTION= BACKWARD (B) FORWARD (F) STEPWISE SLSTAY= n1 SLENTRY=n2 As op es BACKWARD (B) FORWARD (F) STEPWISE s o usadas para definir o m todo para sele o do modelo de regress o As op es SLSTAY= n1 SLENTRY=n2 s o usadas para definir os N veis de
signific ncia para ficar ou entrar, respectivamente, uma vari vel no modelo
31
LISTA DE EXERC CIOS - AULA 6 1. REGRESS O LINEAR SIMPLES. Fazer um programa no SAS para: a) Ler os dados no SAS usando a op o CARDS: Valores Valores de Y de X R1 R2 R3 1 8.2 6.6 9.8 2 19.7 15.7 16.0 3 28.6 25.0 31.9 4 30.8 37.8 40.2 5 40.3 42.9 32.6 b) Representar (no OUTPUT) os pontos graficamente. c) Fazer a an lise de regress o linear y=f(x)=a+bx. d) Fazer a an lise de regress o linear com op es para obter: valores estimados (preditos) de Y ( y i ), Intervalos de confian a para y i , e representar graficamente (na janela GRAPHICS) pontos observados e os estimados com respectivos intervalos. 2. REGRESS O LINEAR M LTIPLA. Fazer um programa no SAS para: a) Ler o arquivo L6E2.DAT, que um arquivo ASC, e cont m as vari veis: X1 = N, X2 = P, X3 = K, X4 = CA, X5 = MG, X6 = S e Y = % terra retida na peneira 18. b) Fazer a an lise de regress o linear m ltipla: Y=f(X1,X2, X3,X4, X5,X6). Obter os valores preditos com respectivos intervalos de confian a. c) Testar se o intercepto difere de 50 e se o coeficiente de N difere de 1. d) Representar graficamente os valores observados vs estimados. e) Fazer a an lise de regress o linear m ltipla e selecionar o modelo usando os m todos: BACKWARD, FORWARD, STEPWISE e R-M XIMO. Definir o N vel de Signific ncia para a sele o dos modelos. 3. REGRESS O POLINOMIAL. Fazer um programa no SAS para: a) Ler os dados no SAS usando a op o CARDS: quantidade Tempo para Ge