Beruflich Dokumente
Kultur Dokumente
instrucciones. Es decir, se escriben los programas. Se le ordena a la mquina ejecutar las instrucciones o correr el programa.
VENTANA: log
Se muestra todo lo que el SAS hizo, una vez que se dio la orden de
ejecutar un programa. Aqu aparecen los mensajes de los errores que pudieran haberse cometido y las razones por las cuales se pudo haber suspendido la ejecucin de algn trabajo.
Cuando se comete
un error aparece al inicio del mensaje la palabra error.
Aparecen mensajes
que se indican con la palabra note.
VENTANA: log
programa, todo lo que se instruy a la computadora que hiciera con los datos.
En ocasiones se ordena la ejecucin de un programa, y despus
de un instante, la ventana salida aparece en blanco, sin la salida con los resultados esperados; esto significa que cometi algn error al escribir el programa, falta algn punto y coma, hay alguna palabra mal escrita, etc., por eso el programa no funcion.
En ese caso hay que ir a la ventana log para descubrir el tipo de
error cometido y despus ir a la ventana Editor de programa para hacer las correcciones y volver a correr el programa.
ahorrar memoria y para que las ventanas estn limpias y se pueda desplegar la informacin correspondiente a la ejecucin del nuevo programa. Debe de estar el cursor en la ventana que se desea borrar y se le da la opcin Edicin/Borrar todo.
ventana program editor y con el programa desplegado en pantalla, puede usarse el cono que representa la figura de un pequeo personaje corriendo en el men principal Ejecutar/Procesar.
ENUNCIADOS BSICOS
Para utilizar el SAS con objeto de analizar un conjunto de
datos, es necesario escribir algunas instrucciones simples, en las que se emplean palabras claves del SAS, lo que constituye bsicamente un programa. data que es la parte del programa donde se coloca el nombre asignado al conjunto de datos(DATA SET) con que se trabajar. continuacin se escribirn en el programa los nombres que el usuario asignar a cada una de las variables con que va a trabajar.
ENUNCIADOS BSICOS
Despus del enunciado input se coloca el enunciado
cards; lo que indica al programa que a continuacin van a escribirse datos. Luego viene el enunciado proc, que corresponde a la etapa de procedimientos, aqu es donde se instruye acerca de qu cosa se necesita hacer con los datos (impresin, ordenarlos, graficarlos, anlisis estadstico, etc.) Finalmente se escribe el enunciado run, para sealar que el programa ha terminado y est listo para ejecutarlo.
CADA INSTRUCCIN DEL SAS TERMINA CON UN PUNTO Y COMA (;)
ENUNCIADOS BSICOS
Las instrucciones se pueden escribir indistintamente
programa y se necesita corregir algn error, es posible mover el cursor mediante las teclas con flechas o con el mouse, ubicarlo en el lugar deseado y hacer la correccin.
ENUNCIADOS BSICOS
Las instrucciones pueden ir juntas en un rengln o en
renglones diferentes.
Antes de iniciar una nueva instruccin, despus del punto y
separadas al menos por un espacio en blanco o varios espacios en blanco, lo cual no importa, lo que no puede olvidarse es que cada instruccin termina siempre en un punto y coma.
proc;
run;
La instruccin data ordena la creacin de un archivo de datos SAS (DATA SET) y le asigna un nombre. El nombre del archivo no debe tener ms de ocho caracteres, debe comenzar con una letra, aunque despus pueda llevar nmeros, y no debe tener espacios en blanco.
INSTRUCCIN data
SINTAXIS DATA nombre del conjunto de datos; EJEMPLOS: data dos; nombre correcto data expto9; nombre correcto data 95ao; nombre incorrecto data b uno; nombre incorrecto data b-tres; nombre correcto data experimento; nombre incorrecto
INSTRUCCIN input
Indica a la computadora el nombre de la o las variables que se
INSTRUCCIN cards;
Esta instruccin seala que a continuacin en el programa
INSTRUCCIN run;
Permite ejecutar el programa y que los resultados
VARIABLES ALFANUMRICAS
EJEMPLO:
Data alumnos; Input nombre $ edad; Cards; Juan 20 Maria 21 Luis 32 Alberto 33 Run;
Como la variable variedad de alfalfa es alfanumrica, entonces para que el SAS la lea y la reconozca como tal, despus de colocar en el input el nombre que la identifica se pone el smbolo $, separado un espacio de dicho nombre (nombre $); a continuacin se coloca el nombre de la otra variable, pors (porcentaje de plantas sobrevivientes) que es una variable numrica.
sta ltima es de gran utilidad cuando queremos ver los datos en un editor de texto.
una librera con la instruccin LIBNAME especificando el nombre y la ruta dnde ubicarla a continuacin. A partir de este momento, para crear un dataset permanente que pertenezca a esta librera se utiliza el nombre compuesto: nombre_libreria.nombre_dataset".
libname permanen "C:\";
INSTRUCCIN proc
Para invocar los procedimientos SAS se emplea la
instruccin PROC que es una abreviatura de la palabra PROCEDURE. Son programas de cmputo que leen el archivo y realizan diferentes operaciones con los datos, como anova (que ejecuta el anlisis de varianza), reg (que hace anlisis de regresin), plot (que realiza grficas) corr (que hace correlaciones), etc. Sintaxis: PROC nombre del procedimiento;
proc contents data=alumnos;
run;
con informacin relativa al dataset que se menciona en la opcin DATA=nombre_dataset, as como de sus variables.
Especificando la opcin POSITION, el listado de las
variables est ordenado segn la posicin de cada variable en el dataset. Por defecto, sin la opcin anterior, este orden es alfabtico.
PROC CONTENTS DATA=ALUMNOS POSITION;
RUN;
introducir algunos comentarios explicativos en el programa. Los comentarios aparecen en el programa sin alterar su funcionamiento. Hay dos formas de introducir comentarios: 1. Iniciar el comentario con un asterisco (*) y terminar con un punto y coma (;). Ej: *este es un comentario; 2. Iniciar el comentario con los signos /* y terminar con */. Ej: /*este es un comentario*/
Ej: data soya; *lee archivo soya.prn en disco c: a partir de observacin 6; infile c:\soya.prn firstobs = 6;
una librera con la instruccin LIBNAME especificando el nombre y la ruta dnde ubicarla a continuacin. A partir de este momento, para crear un dataset permanente que pertenezca a esta librera se utiliza el nombre compuesto: nombre_libreria.nombre_dataset".
libname permanen "C:\";
Tambin se puede mostrar en pantalla ciertos datos que me interesen y para ello utilizo la instruccin WHERE variable=condicin;
Ejemplo:
SAS dispone de un gran nmero de funciones para el tratamiento de variables carcter, de todas ellas destacan: Funcin Descripcin COMPRESS: Elimina un carcter especfico COUNT Cuenta el nmero de veces que aparece un carcter INDEX Busca una cadena de caracteres LEFT Alinea a la izquierda LENGTH Obtiene la longitud de una variable carcter LOWCASE Pone en minsculas MISSING Indica si la variable es missing QUOTE Pone comillas REVERSE Reversa de carcter RIGHT Alinea a la derecha SCAN Busca una cadena de caracteres dentro de otra cadena SUBSTR Extrae partes de una cadena TRANWRD Reemplaza o extrae dentro de una cadena TRIMN Elimina espacios en blanco innecesarios UPCASE Pone en maysculas
VARIABLES ALFANUMRICAS
Cuando los nombres de la variable alfanumrica sean
mayor de 8 caracteres y tengan espacios en blanco, el input (input por columnas) se pone de la siguiente forma: Input nombre $ 1-12 edad 13-17; Al colocar los datos de cada variable enseguida de la instruccin cards; stos deben estar en las columnas sealadas para cada uno de ellos en el input (en este ejemplo desde la primera letra de las variedades hasta antes del inicio de la segunda variable deben haber 12 caracteres (inia-76 1.60)
donde debera ir el dato perdido, separado al menos por un espacio en blanco de los datos anterior y posterior. EJEMPLO: data ejemplo; input trat blo n p d ren; cards; 1 1 90 20 . 2475 Run;
forma de input por columnas se pondra por ejemplo: Input nombre $ 1-10 edad 13-14;
Cuando se quiere utilizar un input con formato, en el
cual se indica primero la columna en la que comienza una variable y despus se especifica el largo de la variable, se sigue el siguiente ejemplo:
Input @1 nombre $18. @21 edad 2.0 @24 fechanac $6. @31 prof $ 12.;
la lectura de la variable, as por ejemplo @21 indica que los valores de la variable (en este caso la edad) se inician en la columna 21.
El formato $ x. indica que se trata de una variable alfanumrica y que
el valor ms largo de la variable consta de x caracteres. No te el punto (.) que sigue a x. El valor de x siempre debe terminar en un punto. Por ejemplo $ 18. indica que el nombre ms largo tiene 18 caracteres.
Qu significa 2.0? ste es un formato del tipo x.y, que indica que se
trata de una variable numrica con x cifras y y decimales. En este caso la variable edad consta de dos cifras y cero decimales
observaciones, por lo que al momento de escribir los datos, es conveniente colocar varias observaciones en un rengln para ahorrar lneas. Para lograr esto, el input se puede hacer como sigue: Input a b c @@; Al colocar los smbolos @@ al final indica que se tienen las variables a, b y c, y que posteriormente en el lugar donde irn los datos (despus de la instruccin cards;), los tres primeros (separados naturalmente al menos por un espacio entre cada uno) correspondern a los valores o datos de la primera observacin de las variables a, b y c, despus los segundos tres datos, en el mismo rengln, correspondern nuevamente a los valores de la segunda observacin de las variables a, b y , y as sucesivamente hasta colocar todas las observaciones que quedan en los 80 espacios de ese rengln.
Ejercicio 1
Nombre Profesor LIZAOLA ROBERTO SANCHEZ ANGEL Categora PRODUCTIVIDAD
PIAS PIAS
477 476
VALVERDE GUSTAVO
MARTINEZ MIGUEL CHULIM NESTOR GARAY OSCAR ESQUEDA MARIA
PIT
PIT PIA PIA PIT
474
471 470 464 449
MARTINEZ REYNA
PEREZ ELISEO
PIT
PIAS
446
420
con
una
Programa en SAS
data productividad; input @1 nombre $17. @18 categoria $5. @23 productividad 3.0; cards; LIZAOLA ROBERTO PIAS 477 SANCHEZ ANGEL PIAS 476 VALVERDE GUSTAVO PIT 474 MARTINEZ MIGUEL PIT 471 CHULIM NESTOR PIA 470 GARAY OSCAR PIA 464 ESQUEDA MARIA PIT 449 MARTINEZ REYNA PIT 446 PEREZ ELISEO PIAS 420 run;
Programa en SAS
proc print data=productividad; var nombre productividad; where categoria='PIT'; run; proc print data=productividad; var nombre categoria productividad; where productividad>470; run; proc print data=productividad; var nombre categoria productividad; where productividad>470 and categoria='PIAS'; run;
PROC SORT
Se utiliza para la ordenacin de conjuntos de datos.
PROC SORT DATA=<dataset de lectura> OUT=<dataset de escritura>; BY [DESCENDING] <variable/s a ordenar>;
data alumnos_dima; input matricula nombre $ edad altura; cards; 1 juan 23 1.80 2 maria 22 1.50 3 luis 25 1.20 4 omar 32 1.65 run;
PROC PRINT
PROC PRINT DATA=<dataset> <opciones>; TITLE <Ttulo para la impresin>; VAR <variables a imprimir>; BY <variable de agrupacin>; SUM <suma total de variable agrupada>; data alumnos_zootecnia; WHERE <condicin>; input nombre $ sexo $ calificacion; RUN;
cards; juan m 10 jose m 8 luis m 9.5 maria f 9.5 lupe f 8 run;
8.
Programa en SAS
proc print data=productividad;
title 'PIAS CON PRODUCTIVIDAD MAYOR A 477'; var nombre categoria productividad;
by categoria;
sum productividad; where productividad>470; run;
proc print data=alumnos_zootecnia; title 'ALUMNOS DE ZOOTECNIA'; var nombre calificacion; by sexo; sum calificacion; where calificacion>8; run;
DATA _NULL_
La sentencia DATA _NULL_ no genera conjunto de
datos SAS, _NULL_ es un tipo especial de dataset que no genera un fichero fsico; con la instruccin PUT= nuestro paso data escribir en la ventana log el valor de las variables que deseamos ver.
Programa en SAS
data _null_; a=25; b=101; c=a+b; put 'Valor de a=' a; put 'Valor de b=' b; put 'Valor de c=' c ; m= abs(-3.44); n= int(-3.44); put 'Valor abosulto de m= 'm ; put n; x=sqrt(2); put x; run; data ejemplo; retain sx 0; input x y; yy=y*y; xx=x**2; sx = sx + x; drop yy; if _N_=5 then put 'yy=' yy; cards; 12 24 36 58 6 10 run;
N_ permite hacer un procedimiento (Ej: put) cuando el programa termina de leer todos los datos, toma valor 1 cuando la primera observacin es entrada e incrementa uno para cada subsecuente observacin.
Ejercicio 2
3
5 7 9 11 13 15
4
6 8 10 12 14 16