2002 Garcia Lopez Manual SAS

115
INTRODUCCIÓN AL MANEJO DE DATOS UTILIZANDO SAS ® Dra. Teresa Beatriz García Peniche Dr. Isaías López Guerrero Dra. Teresa Beatriz García Peniche Dr. Isaías López Guerrero INTRODUCCIÓN AL MANEJO DE DATOS UTILIZANDO SAS ® CENTRO DE INVESTIGACIÓN REGIONAL GOLFO CENTRO CAMPO EXPERIMENTAL LA POSTA INSTITUTO NACIONAL DE INVESTIGACIONES FORESTALES, AGRÍCOLAS Y PECUARIAS ISBN 978-607-425-104-3 ISBN 978-607-425-104-3

description

manual sas

Transcript of 2002 Garcia Lopez Manual SAS

  • INTRODUCCIN

    ALMANEJO

    DEDATOS

    UTILIZANDO

    SAS

    Dra. Teresa Beatriz Garca Peniche

    Dr. Isaas Lpez Guerrero

    Dra. Teresa Beatriz Garca Peniche

    Dr. Isaas Lpez Guerrero

    INTRODUCCIN

    ALMANEJO

    DEDATOS

    UTILIZANDO

    SAS

    CENTRO DE INVESTIGACIN REGIONAL GOLFO CENTROCAMPO EXPERIMENTAL LA POSTA

    INSTITUTO NACIONAL DE INVESTIGACIONES FORESTALES, AGRCOLAS Y PECUARIAS

    ISBN 978-607-425-104-3ISBN 978-607-425-104-3

  • Introduccin al manejo de datos, utilizando SAS

    DIRECTORIO INSTITUCIONAL

    SECRETARA DE AGRICULTURA, GANADERA, DESARROLLO RURAL, PESCA Y ALIMENTACIN

    Ing. Alberto Crdenas Jimnez

    Secretario

    Ing. Francisco Lpez Tostado Subsecretario de Agricultura

    Ing. Antonio Ruiz Garca

    Subsecretario de Desarrollo Rural

    Lic. Jeffrey Max Jones Jones Subsecretario de Fomento a los Agronegocios

    INSTITUTO NACIONAL DE INVESTIGACIONES FORESTALES, AGRCOLAS Y

    PECUARIAS

    Dr. Pedro Brajcich Gallegos Director General

    Dr. Enrique Astengo Lpez

    Coordinador de Planeacin y Desarrollo

    Dr. Salvador Fernndez Rivera Coordinador de Investigacin, Innovacin y Vinculacin

    Lic. Marcial A. Garca Morteo

    Coordinador de Administracin y Sistemas

    CENTRO DE INVESTIGACIN REGIONAL GOLFO CENTRO

    Dr. Vicente E. Vega Murillo Director Regional

    Dr. Sergio Uribe Gmez Director de Investigacin

    Dr. Francisco Javier Ibarra Prez

    Director de Planeacin y Desarrollo

    C.P. Velia Martnez Castillo Directora de Administracin

    Dr. Ral Ros Snchez

    Director de Coordinacin y Vinculacin en Puebla

    M.C. Oscar G. Castaeda Martnez Director de Coordinacin y Vinculacin en Tabasco

  • Introduccin al manejo de datos, utilizando SAS

    CONTENIDO

    Pg.

    CAPTULO 1 Por qu SAS? .............................................................................................1 CAPTULO 2 Las ventanas de SAS ...................................................................................3 CAPTULO 3 Archivos permanentes en SAS .................................................................11 CAPTULO 4 Archivos temporales en SAS ....................................................................15 Para hacer comentarios..................................................................................16 Enhanced Editor .............................................................................................16 Creacin de una base de datos en SAS ......................................................17 Mensajes del Log .........................................................................................18 Cambiando de archivos temporales a permanentes.......................................20 Ver la base de datos.......................................................................................21 Guardar los cdigos........................................................................................22 Tamao de las bases de datos guardadas en SAS .....................................24 Acceso a los cdigos guardados ....................................................................24 CAPTULO 5 Los programas de SAS..............................................................................25

    Acerca de los comentarios...................................................................25 Recomendacin ...................................................................................27 Procedimientos y rdenes (o instrucciones) de SAS.........................28 Manejo de los resultados .....................................................................28

    CAPTULO 6 La base de datos...........................................................................................31

    1. Importar bases de datos de Excel .................................................32 2. Exportar bases de datos de SAS hacia Excel ............................39 3. Otras formar de importar o exportar (sin Wizard).............................43

  • Introduccin al manejo de datos, utilizando SAS

    CAPTULO 7 Ms acerca de lectura de datos por SAS .................................................47

    1. Creando un archivo de datos con la orden DATA............................47 2. Leyendo datos con sealador de columna ......................................49 3. Leyendo datos escritos de corrido ...................................................50 4. Leyendo datos de archivos ASCII....................................................51

    Infile...........................................................................................52 Filename ...................................................................................52

    5. Para saltar informacin que SAS no debe leer..............................53 CAPTULO 8. Algunos procedimientos de SAS..............................................................55 1. Para ordenar los datos................................................................................55

    Proc sort ..............................................................................................55 Para eliminar datos repetidos ..............................................................56

    2. Para verificar la calidad de los datos y/o resumir informacin de los datos crudos.....................................................................................56

    Proc freq ..............................................................................................56 Proc means..........................................................................................58

    3. Para manejar la base de datos ...................................................................61 Drop .....................................................................................................61 Keep ....................................................................................................62 Rename ...............................................................................................62

    4. Para crear variables por medio de operaciones matemticas ....................63 5. Para unir dos o ms bases de datos ..........................................................65

    Set .......................................................................................................65 Merge...................................................................................................66 Otro uso de Merge ...............................................................................68

    CAPTULO 9 Ms de manejo de datos en SAS ..............................................................71 Los condicionantes.........................................................................................71

    Ifthen ................................................................................................71 Else ifthen.........................................................................................73 Ifand/or.then..................................................................................74

    Algunas funciones de SAS...........................................................................74 Fechas .................................................................................................74 Mes, ao ..............................................................................................75 Mximos, mnimos y sumatorias..........................................................76 Sumatoria ............................................................................................76

  • Introduccin al manejo de datos, utilizando SAS

    Mximos ..............................................................................................76 Mnimos ...............................................................................................77

    Recomendaciones finales...............................................................................77

    CAPTULO 10. Algunos cdigos de estadstica ..................................................................79 Proc glm .........................................................................................................80 Proc mixed......................................................................................................84 Proc univariate ...............................................................................................84 Prog reg..........................................................................................................89 Para seleccionar el modelo de regresin mltiple ms adecuado..................92 Proc corr .........................................................................................................93 Proc glm para anlisis de varianza multivariado.............................................94 Otras ordenes bsicas....................................................................................95

    Where en proc means .......................................................................95 Proc boxplot .........................................................................................95 Prueba de Chi-cuadrada en proc freq..................................................95

    CAPTULO 11 Algunos cdigos de diseos experimentales ............................................97 1. Diseo completamente al azar ...................................................................97 2. Comparacin de tratamientos.....................................................................98 3. Comparaciones mltiples ...........................................................................99 4. Diseo de bloques completos al azar .........................................................99 5. Diseo de bloques al azar generalizados .................................................100 6. Diseo de bloques incompletos, incluyendo el diseo de bloques

    completos al azar con observaciones perdidas ........................................100 7. Diseo de cuadro latino ............................................................................101 8. Diseo de cuadro latino con repeticiones .................................................101 9. Diseo de parcelas divididas (ejemplos) ..................................................101 APNDICE ...................................................................................................104 LITERATURA CITADA ................................................................................105 RECONOCIMIENTO CRDITOS EDITORIALES DIRECTORIO INSTITUCIONAL

  • Introduccin al manejo de datos, utilizando SAS

    NDICE DE FIGURAS

    Pg. Figura 1 Ambiente de trabajo de SAS como aparece al abrir el

    programa (despus de oprimir el icono con el logotipo deSAS).

    5

    Figura 2 Men que se abre al oprimir la opcin View del menprincipal.

    8 Figura 3 Ventana que se abre al oprimir el icono de creacin de

    archivero nuevo (el dibujo del archivero amarillo con unaestrella azul).

    11

    Figura 4 Ejemplo de cdigo con datos escritos directamente (ocopiados de algn editor de textos) en el Editor de SAS.

    18 Figura 5 Contenido del Log despus de ejecutar el cdigo del

    ejemplo.

    19 Figura 6 Archivo temporal que se encuentra dentro del archivero

    Work

    21 Figura 7 Los datos abiertos del archivo Ejemplo que se encuentra

    dentro del archivero WORK.

    22 Figura 8 Men que se abre para guardar un cdigo antes de cerrar la

    sesin de SAS.

    23 Figura 9 Pantalla para dar nombre al cdigo de SAS que se desee

    guardar.

    23 Figura 10 Archivo de datos de Excel editado para ser exportado a

    SAS.

    33 Figura 11 Utilizacin del Wizard para importar datos hacia SAS. 35 Figura 12 Seleccin del programa de donde se van a importar datos a

    SAS

    35 Figura 13 Bsqueda de la localizacin del archivo a importar. 36 Figura 14 Seleccin del archivo a importar. 36 Figura 15 Aceptar el archivo seleccionado. 37 Figura 16 Seleccin del archivero donde se va a guardar el archivo a

    importar.

    37 Figura 17 Mensaje que aparece en el Log despus de una importacin

    exitosa.

    38 Figura 18 Verificando que los datos se hayan importado correctamente. 39

  • Introduccin al manejo de datos, utilizando SAS

    Figura 19 Seleccin de la opcin de exportar en el Wizard. 40 Figura 20 Utilizacin del Wizard para exportar datos de SAS. 41 Figura 21 Buscando el lugar donde se van a guardar los datos a

    exportar.

    42 Figura 22 Dndole nombre al archivo a exportar. 42 Figura 23 Ejemplo de como de ven los datos de un archivo. 45 Figura 24 Ejemplo de la orden merge. 68

    NDICE DE CUADROS

    Pg. Cuadro 1 Algunas opciones de Means con el procedimiento glm. 3 Cuadro 2 Algunas opciones a usar con el procedimiento Univariate. 89 Cuadro 3 Algunas opciones de la instruccin Plot en el procedimiento

    Reg.

    90 Cuadro 4 Algunas opciones que se utilizan con el procedimiento Corr. 94

  • CAPTULO 1 Por qu SAS?

    En sus inicios, el programa SAS llevaba ese nombre por ser las siglas de

    Statistical Analysis System (Sistema de Anlisis Estadsticos). Sin embargo,

    actualmente SAS incluye toda una familia de programas, por ejemplo, para anlisis

    financieros y para manejo de datos sociales (entre muchos otros), y SAS/STAT es

    slo uno ms entre sus mltiples funciones, de manera que el nombre SAS es

    ahora slo un nombre, sin que tenga un significado especfico. El presente manual se

    refiere a algunas funciones bsicas de SAS/STAT, con mayor probabilidad de

    utilizarse en investigacin en las ciencias agropecuarias.

    SAS es el paquete estadstico de ms prestigio, y se encuentra entre los ms

    poderosos instrumentos de manejo y anlisis de datos en el mundo. El programa

    SAS es distribuido en ms de 120 pases para aproximadamente 3.5 millones de

    usuarios. Este programa no puede comprarse, slo se adquieren licencias de uso.

    Sin embargo, una vez que se adquiere una licencia, se pagan cuotas anuales que

    dan derecho a que automticamente se tenga acceso a las novedades, adiciones o

    mejoras en el programa. Estas cuotas sirven, en gran parte, para financiar la

    investigacin que mejora los programas. Los usuarios pueden opinar en qu mbito

    requieren o preferiran modificaciones a los programas, si contactan [email protected].

    Tambin es posible enviar sugerencias al correo [email protected]. El Instituto SAS

    tiene su sede en Carolina del Norte, Estados Unidos. Su pgina, www.sas.com debe

    consultarse para adquirir licencias.

    El presente manual est dirigido a quienes deseen iniciarse en el uso de SAS,

    especialmente para quienes trabajan en ciencia biolgicas y agropecuarias, y

    manejen datos de investigacin. No se incluyen temas intermedios ni avanzados,

    Introduccin al manejo de datos, utilizando SAS 1

  • Introduccin al manejo de datos, utilizando SAS 2

    sino se trata de que los lectores se familiaricen con el ambiente Windows de SAS, y

    de que tengan a la mano un listado de cdigos bsicos y sencillos en lenguaje SAS

    para manejar cualquier cantidad de datos, ya sea para anlisis directo en SAS, o

    para uso posterior de algn otro paquete de anlisis especializado, por ejemplo, el

    ASREML (programa que se utiliza en anlisis de gentica cuantitativa). Los

    programas especializados suelen estar escritos en lenguaje Fortran, C, o C++. Sin

    embargo, tpicamente, la capacidad de combinar o crear variables a partir de otras

    variables, o la capacidad de editar los datos, es decir, el manejo de los datos, es muy

    limitado en estos programas. Por esta razn, es conveniente preparar los datos

    primero usando un programa ms amigable, como SAS.

    Con frecuencia, a las rdenes que se escriben para que SAS ejecute un

    procedimiento, se les llama programas o cdigos (la palabra que se utilizar con

    ms frecuencia ser cdigo). Hay varias maneras de obtener un mismo resultado

    usando SAS, pero en general, se mencionar una sola forma, para que sirva ms

    como una gua que como una fuente de confusin.

    Se incluyen algunos cdigos de procedimientos estadsticos bsicos. Su buen uso

    tiene como prerrequisito tener las bases suficientes de estadstica para cada caso, o

    consultar a alguien versado en el tema.

    Esta obra dista mucho de ser un manual completo de SAS. Existen literalmente

    cientos de libros, y an ms sitios en Internet dedicados al uso de este poderoso

    programa. Sin embargo, esperamos que el contenido del escrito sea de utilidad a

    todos los lectores.

  • CAPTULO 2

    Las ventanas de SAS

    Una vez adquirida la licencia, usted tendr, ya sea un enlace para bajar el programa,

    o un nmero variable de CDs que contienen el programa de SAS, dependiendo de

    la versin, y del tipo de licencia que haya adquirido. La ms bsica, generalmente, es

    suficiente para trabajar en todo lo relacionado con la investigacin en ciencias

    biolgicas, agropecuarias y forestales. Uno de los CDs vendr marcado como el

    apropiado para iniciar la instalacin. Slo hay que introducirlo en la PC y seguir los

    pasos que se vayan indicando.

    El SAS es un programa grande que requiere al menos de Windows 98, con mnimo

    de 10 GB de capacidad en disco duro y RAM de 512, de manera que en cualquier

    computadora actualmente puede instalarse el programa SAS. Se debe tomar en

    cuenta que la instalacin puede tardar varios minutos. Una de las opciones de

    instalacin es el idioma en que se desea trabajar en SAS. Sin embargo, sin

    importar que idioma se elija, todas las instrucciones que se escriban para SAS y la

    mayora de la informacin que se obtiene de la ventana del Log deben y van a estar

    en ingls. Por lo anterior, y tambin para traducir ciertas opciones, el contenido de

    esta obra har referencia a la versin en ingls del programa.

    Una vez instalado el SAS, en su computadora aparece un icono con el logotipo de

    la versin de SAS que se haya instalado, ya sea en el contenido de la

    computadora, o en el escritorio de la pantalla. Este icono sirve como atajo (shortcut)

    para inicializar el programa. En algunas versiones, basta un clic en el shortcut

    para que el programa abra, y en otras versiones, se necesita el doble clic. En caso

    de que se abran dos ventanas, cada una con el programa de SAS, se puede

    trabajar con los dos programas al mismo tiempo, pero esto puede ocasionar que la

    Introduccin al manejo de datos, utilizando SAS 3

  • computadora se bloquee, y se pierdan ambos trabajos. Adems, a menos que se

    est trabajando con varias decenas de millones de datos, o que se estn realizando

    miles de iteraciones (repeticiones de un procedimiento), el SAS es un programa

    muy rpido, y se perdera ms tiempo maximizando y minimizando una ventana u

    otra de SAS, que utilizando una sola, por lo cual es preferible cerrar la ventana que

    no se vaya a utilizar.

    Al abrir SAS, se pueden ver varias ventanas y un men (Figura 1). Las ventanas

    ms importantes son la del contenido, la del Editor (o Enhanced Editor), la del

    Log, y la del Output; esta ltima, detrs de las dos anteriores. En algunas

    versiones, al abrir SAS aparece una ventana que ofrece tutoras en el uso del

    programa, en diversos niveles de complejidad a escoger. El usuario puede decidir

    abrir la ventana y aprovechar estas lecciones o cerrar la ventana e iniciar

    directamente con el trabajo en SAS. El ambiente de SAS, es decir, todo el

    conjunto de ventanas, puede encontrarse ya maximizado, o estar minimizado, al

    momento de iniciar la sesin. En la esquina extremo derecha se encuentran los

    smbolos para cerrar, minimizar y para maximizar el programa. Si se oprime el de

    cerrar, el programa pregunta: Are you sure you want to end the SAS session?

    (Est usted seguro de que quiere cerrar la sesin de SAS?). Si se oprime Yes

    (s), entonces, le preguntar, en ingls, si quiere guardar los cambios, y despus de

    guardarlos, o de que se le indique que no se desea guardar nada, slo entonces, se

    cierra el programa.

    Las ventanas son:

    a) La ventana del Explorer que se encuentra, al abrir SAS, a la izquierda, en forma vertical, e incluye el Contenido del Ambiente SAS, el cual, a su vez,

    contiene Libraries (la biblioteca), que es en donde se guardan los archiveros

    generados por y para SAS. En las versiones ms avanzadas, el Contenido del

    Ambiente SAS tambin incluye: File shortcuts, Favorite folders, y Mi PC, que es

    de donde pueden provenir bases de datos que se importen hacia SAS para

    trabajar con ellos.

    Introduccin al manejo de datos, utilizando SAS 4

  • Dentro de Libraries se encuentra, por default, el archivero llamado WORK

    (trabajo). Este archivero no debe borrase, porque es en donde se guardan en

    forma automtica los archivos de trabajo que no son permanentes. Es decir, una

    vez que se cierra la sesin de SAS, todos los archivos que hayan sido

    guardados en WORK se borrarn.

    Figura 1. Ambiente de trabajo de SAS tal como aparece al abrir el programa (despus de oprimir el icono con el logotipo de SAS). La ventana de Log es en donde se encuentran las letras azules. La ventana del Editor se encuentra debajo de la del Log, y la ventana del Output est detrs de las dos anteriores.

    Otro archivero ya incluido se llama SASUSER (usuario de SAS) y puede

    usarse para guardar archivos permanentes, sin que el usuario tenga que crear un

    archivero nuevo (Ver Captulo 3, acerca de creacin de archiveros).

    Introduccin al manejo de datos, utilizando SAS 5

  • El usuario tambin puede crear sus propios archiveros, utilizando los nombres

    que desee. En libraries aparecern todos los archiveros que el usuario haya

    creado para trabajar en SAS, adems de SASUSER y WORK.

    b) La ventana del Log (ver Figura 1), que se encuentra arriba al abrir SAS, tiene informacin del copyright, de a quien pertenece la licencia de ese programa en

    particular, y detalles del uso de los recursos de la computadora en el programa

    SAS.

    Una vez trabajando, en Log van a aparecer los reportes del resultado del

    programa o cdigo, incluyendo una copia del cdigo usado, el nmero de

    observaciones ledas, los errores, si los hubiese, algunas veces con sus

    correspondientes sugerencias de correccin, y el tiempo utilizado en la ejecucin

    del programa. En esta ventana tambin aparece la advertencia cuando la licencia

    de SAS est a punto de vencerse, y alerta de que despus de la expiracin, no se

    podr utilizar el programa.

    En resumen, el Log contiene: la versin de SAS en uso, a quien pertenece la

    licencia, la plataforma de ejecucin, el cdigo usado, con cada lnea numerada, el

    nombre del archivo ledo y su ubicacin. Si el programa no corri (no se ejecut),

    aparecen los errores o advertencias (con algunas advertencias el programa corre

    de todas maneras), y sugerencias para corregir el cdigo. Si el cdigo corre,

    aparecern el nmero de observaciones ledas y el nombre del archivo creado.

    Las letras son azules cuando todo corre normalmente, rojas, si el programa no se

    ejecut por errores graves del cdigo, y de otro color, si hubo algn problema que

    el programa super solo.

    c) La ventana del Editor (es la ventana de abajo), es donde se escriben los cdigos y programas o se dan las instrucciones que se requiere sean ejecutadas. En las

    ltimas versiones de SAS , que es a las que se refiere esta obra, el que se abre

    por default es el Enhanced Editor, que es una versin mejorada del Editor. Es

    muy til porque las instrucciones o cdigos que se escriben van en colores

    Introduccin al manejo de datos, utilizando SAS 6

  • diferentes, segn sean palabras exclusivas de SAS (por ejemplo DATA o

    PROC), o las palabras con que se identifican las variables o los nombres de

    archivo. Tambin vienen en diferentes colores los nmeros, y las palabras de uso

    exclusivo de SAS que fueron mal escritas.

    Puede haber ms de una ventana del Editor abierta, cada una conteniendo

    diferentes cdigos. Para hacer que un cdigo especfico se ejecute, primero de

    marca o sombrea el cdigo utilizando el botn izquierdo del ratn, y luego

    oprimiendo el icono de orden de correr (el icono de Run, como veremos). Si por

    alguna razn, se cerrase(n) la(s) ventana(s) del Editor (o del Enhanced Editor),

    y se deseara reabrirla(s), hay que hacer clic en View (una opcin en el men), y

    seleccionar Enhanced Editor.

    d) La ventana del Output se encuentra por default detrs de las de Log y del Editor mientras no haya resultados que mostrar. Cuando se corre un programa

    que genere resultados al Output, este se coloca por delante del Log y del

    Editor automticamente. En esta ventana aparecen los resultados que se pueden

    imprimir. Esto no significa que de esta ventana sea posible imprimir

    directamente, sino que son resultados que aparecen, es decir, son impresos en

    forma virtual. Hay muchos resultados que no necesariamente aparecen en el

    Output, aunque muchos de ellos pueden solicitarse mediante un cdigo. La

    manera que se sugiere aqu para imprimir los resultados a papel, es copiar el

    contenido del Output, pegarlo en Word, efectuar las ediciones necesarias; por

    ejemplo, cambiar color y tipo de letra, o cualquier otra edicin que se desee, y

    finalmente, imprimir.

    En ambiente Windows, las ventanas horizontales (es decir, todas, excepto la del

    ambiente de SAS) pueden arrastrarse y moverse con el Mouse, y todas las

    ventanas pueden abrirse o cerrarse, pero antes de cerrar la ltima ventana de

    SAS, el programa pregunta si quieres cerrar la sesin. Al menos una ventana

    debe permanecer abierta para continuar con el programa SAS en ejecucin.

    Introduccin al manejo de datos, utilizando SAS 7

  • Tambin existe una ventana de Results (Resultados) debajo de la ventana del

    Explorer, minimizada en el momento de abrir SAS. Esta ventana sirve como

    una tabla de contenido de los resultados que vayan saliendo en el Output. Si se

    oprime alguno de los resultados, esa porcin aparece visible en el Output.

    Del men principal, que es una lista de ocho palabras (File, Edit, View, Tools,

    Run, Solutions, Window, Help) que se encuentra horizontalmente al extremo

    izquierdo de la pantalla de SAS, quiero resaltar el uso de View. Si se oprime

    View, se abre el men con el cual se pueden acceder todas las ventanas de

    SAS, como se observa en la Figura 2, y si se selecciona Contents only, aparece

    el contenido de Libraries, los archiveros.

    Figura 2. Men que se abre al oprimir la opcin View del men principal.

    Introduccin al manejo de datos, utilizando SAS 8

  • Debajo del men hay una ventana para escribir instrucciones y junto a sta, dibujos

    de enlace; para elegir las instrucciones se oprime la tecla enter sobre ellos. Por lo

    tanto, existen tres formas de dar rdenes a SAS: Por medio de mens

    desplegables (File, Edit, View, Tools, etc), por medio de los dibujos (lo

    recomendado aqu), y escribiendo instrucciones en la ventanita de comando (no

    recomendable, pues es fcil equivocarse). Tambin se puede oprimir el botn

    derecho del ratn y elegir entre alguna de las opciones que aparezcan.

    Escribir instrucciones u oprimir los dibujos da los mismos resultados, por lo que se

    recomienda utilizar los dibujos. Los dibujos del men son prcticamente iguales a los

    de los programas de Microsoft Word Excel, etc. Incluyen, entre otros:

    1. Documento nuevo 2. Abrir archivos 3. Guardar archivos 3. Imprimir 4. Copiar 5. Cortar 6. Pegar

    Todos stos son muy tiles para guardar o modificar cdigos, pero no se van a

    discutir aqu, pues es obvio su uso, como en el editor de textos Word.

    Exclusivos de SAS son los comandos de ejecutar o correr programa (Run), crear

    un archivo nuevo, ver la ventana del Explorer, y ayuda de SAS. El usuario deber

    explorar poco a poco todas estas opciones. Slo algunas de ellas, las ms

    esenciales, se tratarn aqu.

    Introduccin al manejo de datos, utilizando SAS 9

  • Introduccin al manejo de datos, utilizando SAS 10

  • CAPTULO 3

    Archivos permanentes en SAS

    Para tener un lugar especfico donde guardar las bases de datos permanentes para

    utilizarse en SAS, se utiliza el comando de creacin de archiveros, cuyo dibujo de

    enlace es un archivero amarillo con una estrella azul arriba. Al oprimir este enlace, se

    abre una ventana o pantalla como la que se muestra en la Figura 3.

    Figura 3. Ventana que se abre al oprimir el icono de creacin de archivero nuevo (el dibujo del archivero amarillo con una estrella azul).

    Introduccin al manejo de datos, utilizando SAS 11

  • Antes de utilizar la opcin de crear un archivero nuevo es necesario tener

    perfectamente localizado el lugar dentro de la PC donde se encuentre. Para este

    propsito:

    1. Crear un Nuevo Flder o carpeta en algn lugar de la PC, del cual no se mueva. Puede ser en el escritorio, en Mis documentos o en cualquier otro

    lugar. Otra opcin es seleccionar un flder o carpeta ya existente, pero que

    dentro del cual se desee guardar las bases de datos permanentes que se

    tengan o que vayan generando con SAS.

    2. A este flder pngale un nombre sencillo, corto, de ocho menos dgitos. Se pueden combinar letras y nmeros, e incluir guiones bajos, si se desea, pero

    no se pueden utilizar otros smbolos ni guiones, y el nombre debe de empezar

    con una letra o con un guin bajo (no con nmero). Se recomienda un nombre

    corto hecho nicamente de letras.

    3. Cerrar el flder si estaba abierto, as como cualquier base de datos que contenga.

    Hecho lo anterior, se procede en la forma siguiente:

    1. Abrir SAS y oprimir el dibujo de creacin de archivero nuevo (el dibujo del archivero amarillo, con su estrella azul), va a salir una pantalla como en la

    Figura 3.

    2. En la primera ventanita Name (nombre), escribir el nombre del flder recin creado o el flder designado para contener los datos para trabajar en

    SAS.

    3. La segunda ventanita, dejar Default.

    4. Marcar el espacio en la ventanita Enable at startup (hacer disponible desde el inicio).

    5. Debajo de Library information, en Path (camino), oprimir Browse (examinar) y encontrar el camino para llegar al flder designado; por ejemplo,

    Introduccin al manejo de datos, utilizando SAS 12

  • Introduccin al manejo de datos, utilizando SAS 13

    podra estar en: Mis documentos, y la carpeta llamarse Datos, al seguir el

    enlace, automticamente se escribira: C:\Documents and Settings\Yo\Mis

    documentos\Datos

    Lo anterior tambin es posible escribirlo directamente. Una vez definido este

    camino, SAS va a buscar la informacin en ese lugar nicamente; por eso, si

    se mueve el flder de lugar, SAS no lo va a poder encontrar.

    6. No escribir nada en Options

    7. Oprimir Ok

    8. Verificar que dentro de Libraries (Dentro de la ventana vertical a la izquierda, en SAS, ahora se encuentre un archivero llamado Datos. Si

    Libraries no est abierto, oprimir View, y despus Contents only.

    Si no se desea tener bases de datos (a veces tambin le llamaremos archivos)

    permanentes en SAS, sino que se desea importar los datos de otro programa,

    como Excel por ejemplo, o escribir los datos para analizarse, no es necesario crear

    archiveros. SAS puede trabajar con datos temporales. Sin embargo, los archivos

    guardados en SAS con frecuencia son mucho ms compactos que en hojas de

    clculo o archivos de texto. Si el espacio fuese una limitante en memoria, guardar los

    datos en SAS economiza espacio y es muy fcil de usar.

  • Introduccin al manejo de datos, utilizando SAS 14

  • CAPTULO 4

    Archivos temporales en SAS

    En la ventana del Enhanced Editor (simplemente lo llamaremos Editor), se

    escriben los cdigos de programa para trabajar con una base de datos que:

    a) se encuentre en un archivero permanente de SAS;

    b) se vaya a formar al escribir directamente los datos, o bien,

    c) se encuentre fuera de los archiveros de SAS, es decir, en alguna carpeta de la PC, en un CD, o en un dispositivo extrable, por ejemplo.

    En este captulo vamos a ver como crear una base de datos, en este caso, temporal

    (la opcin b de la lista anterior). Una ligera modificacin al cdigo, indicndole a

    SAS donde guardar los datos (un archivero diferente de WORK), da la orden de

    convertir la base de datos a permanente.

    Los archiveros que se crean como se describi en el captulo anterior, sirven para

    guardar las bases de datos en forma permanente (aunque tanto los archivos como

    los archiveros se pueden borrar en el momento que se desee, con Delete). Sin

    embargo, con frecuencia la base de datos es pequea y no se requiere guardarla en

    SAS. Es posible que ya se encuentre en algn otro programa, en Excel, por

    ejemplo, y que no se desee tener la informacin repetida, o que sea preciso

    actualizar la informacin peridicamente, lo cual quiz resulte ms fcil hacer en

    Excel que en SAS. En SAS no se puede modificar directamente la informacin

    en las bases de datos; es decir, si en una celda se encuentra el nmero 3.001, por

    ejemplo, y el nmero est mal, no se puede llegar a ese nmero en particular con el

    cursor, ni mediante algn otro artificio, y modificarlo directamente. Se puede, sin

    Introduccin al manejo de datos, utilizando SAS 15

  • embargo, modificar toda la columna y hacer operaciones o buscar el dato errneo,

    siempre y cuando haya forma de determinar su posicin y el dato sea nico.

    Si en el men (la lnea que contiene las palabras: File, Edit, View, Tools, Run, etc.)

    se oprime View y despus se selecciona Contents only, aparece a la izquierda (si

    no es que ya estaba ah mismo, pues por default al abrir SAS aparece esta ventana

    vertical) el dibujo de un archivero amarillo (Libraries). Si se oprime este enlace

    aparecen los archiveros que se tienen. SAS incluye dos archiveros: SASUSER y

    WORK. Nos ocuparemos nicamente del archivero WORK. En WORK se

    guardan todas las bases de datos a las cuales no se les haya indicado en que

    archivero van. Mientras est en proceso la sesin de SAS , las bases de datos

    estn disponibles y pueden ser vistas al abrir el archivero WORK (slo se da clic en

    WORK, y despus en la base de datos que se desee ver).

    Para hacer comentarios

    Es muy til aadir comentarios de lo que estamos haciendo. La forma correcta de

    hacerlo es escribir un cdigo y junto a l, debajo o antes de l, hacer un comentario.

    Si se escribe:

    / comentario / o comentario;

    El comentario o cualquier otra cosa que se escriba entre los / / ; no va a ser ledo por SAS. Incluso pueden escribirse cdigos a usar bajo condiciones diferentes

    del anlisis actual, que no se van a leer si se ponen entre los / / o ;. Aqu siempre se va a utilizar la forma comentario; para las notas o comentarios.

    Enhanced Editor

    Cuando empezamos a escribir el cdigo en el Enhanced Editor (que, como ya se

    dijo, aqu llamaremos simplemente Editor) lo primero que notamos es que las letras

    tienen colores: Los comandos de SAS, como DATA, INPUT, CARDS y RUN estn

    en azul. De hecho, DATA y RUN, estn en azul obscuro, e INPUT y CARDS, en azul

    Introduccin al manejo de datos, utilizando SAS 16

  • claro. Las palabras o datos que nosotros utilizamos, estn en negro. El comentario

    (lo escrito dentro de ;) est en verde. Si aparece alguna palabra en rojo, significa que hay algn problema y que el programa no va a correr.

    Para este ejemplo se va a crear una base de datos. Se debe escribir todo lo que

    sigue exactamente como aparece aqu, en la ventana del Editor. O se puede

    escribir en Word y despus copiar a la ventana del Editor.

    No importan lo espacios antes despus de cada comando, ni si se escribe todo

    seguido o se pasa a la siguiente lnea. Sin embargo, se recomienda poner cada

    frase en una lnea, para que el cdigo sea fcilmente legible.

    Creacin de una base de datos en SAS

    Ejemplo de cdigo para crear una base de datos escrita en SAS (Figura 4):

    DATA ejemplo;

    INPUT rana tam salto;

    CARDS;

    1 1 16

    2 2 18

    3 3 17

    4 1 12

    5 2 17

    6 3 21

    7 1 15

    8 2 16

    9 3 17

    ;

    tamao 1= chico, tamao 2 = mediano, tamao 3 = grande; Run;

    Introduccin al manejo de datos, utilizando SAS 17

  • Para que el cdigo corra, hay que oprimir el icono de ejecutar programa (Run),

    representado por el dibujo de la silueta de una persona corriendo.

    Figura 4. Ejemplo de cdigo con datos escritos directamente (o copiados de algn editor de textos) en el Editor de SAS. Mensajes del Log

    En este caso, se observa que aparece un mensaje en la ventana del Log, como

    puede verse en la Figura 5 (la ventana del Log se hizo un poco ms grande

    utilizando el ratn, para que se vea todo el contenido, para propsitos de este

    ejemplo); el contenido del Log se reproduce a continuacin, para facilitar su lectura:

    79 DATA ejemplo;

    80 INPUT rana tam salto;

    81

    82 *tamao 1= chico, tamao 2 = mediano, tamao 3 = grande;

    Introduccin al manejo de datos, utilizando SAS 18

  • 83

    84 CARDS;

    NOTE: The data set WORK.EJEMPLO has 9 observations and 3 variables.

    NOTE: DATA statement used (Total process time):

    real time 0.00 seconds

    cpu time 0.01 seconds

    94 ;

    95

    96 *tamao 1= chico, tamao 2 = mediano, tamao 3 = grande;

    97 Run;

    Figura 5. Contenido del Log despus de ejecutar el cdigo del ejemplo.

    Se observa que:

    1) las lneas estn numeradas, en este caso, la numeracin empieza del 79 porque haba instrucciones anteriores que fueron borradas;

    Introduccin al manejo de datos, utilizando SAS 19

  • 2) el cdigo se repite, incluyendo el comentario, pero no los datos;

    3) las Notas, que es el reporte de la ejecucin del programa por parte de SAS estn en azul buena noticia, porque si algo sale en rojo, significa que el

    cdigo estaba mal escrito o que por alguna razn, no se pudo correr el

    programa, o corri mal;

    4) se menciona una base de datos llamada work.ejemplo, dando detalles del

    nmero de observaciones (hileras) y del nmero de variables (columnas); y

    5) se dan detalles del tiempo de ejecucin y a veces otros detalles tcnicos.

    Cambiando de archivos temporales a permanentes

    El nombre de la base de datos work.ejemplo, significa que en el archivero WORK,

    existe una base de datos llamada ejemplo (Figura 6). Como se mencion antes,

    todo el contenido del archivero WORK se borrar tan pronto termine la sesin de

    SAS. A continuacin se indica la modificacin al cdigo para que la base de datos

    se guarde como permanente: En lugar de slo poner el nombre de la base de datos

    (ejemplo), le ponemos el nombre del archivero donde queremos que se

    guardey que NO sea en WORK. Digamos que el archivero se llama Ranas, y

    que lo creamos anteriormente, siguiendo los pasos del Captulo 3.

    El cdigo se modifica para que quede as (slo se muestra el principio):

    DATA ranas.ejemplo;

    INPUT rana tam salto;

    CARDS;

    1 1 16

    2 2 18

    etc.

    Para ver la base de datos o archivo (Figura 6), primero se abre la ventana de

    Libraries (si la ventana del SAS Environment se encuentra cerrada, el proceso es

    oprimir View, y despus Contents Only, para que se abra Libraries) y se hace

    Introduccin al manejo de datos, utilizando SAS 20

  • clic en el archivero WORK, en el caso del primer cdigo, y/o en el archivero

    Ranas, en el caso del segundo cdigo, y en cualquiera de los dos casos, se

    observa que contiene la base de datos llamada Ejemplo.

    Figura 6. Archivo temporal que se encuentra dentro del archivero WORK.

    Ver la base de datos

    Para ver los datos del archivo, se hace clic sobre el mismo (Figuras 6 y 7). Se

    pueden tener abiertas simultneamente dos o ms bases de datos, pero es preciso

    cerrarlas antes de que se ejecute un cdigo. Es preferible abrir las bases de datos

    una por una, e irlas cerrando despus de verlas, para no olvidar cerrar alguna antes

    de dar la instruccin de Run.

    Introduccin al manejo de datos, utilizando SAS 21

  • Siempre es aconsejable ver como qued la base de datos para verificar que result

    lo que queramos que sucediera. Los programas de cmputo, al menos hasta el

    momento de escribir esto, hacen siempre lo que se les indica, que a veces no es lo

    que el programador quera.

    Figura 7. Los datos abiertos del archivo Ejemplo que se encuentra dentro del archivero WORK.

    Guardar los cdigos

    Para guardar el cdigo (todo lo que escribimos; en este ejemplo, desde DATA hasta

    RUN;) se deber abrir el men File, y seleccionar Save As (Figura 8). Luego se le

    da un nombre al cdigo y se elige la carpeta donde queramos que se guarde (Figura

    9), o bien, se puede crear una carpeta, tal como se hace en el programa Word.

    Introduccin al manejo de datos, utilizando SAS 22

  • Figura 8. Men que se abre para guardar un cdigo antes de cerrar la sesin de SAS.

    Figura 9. Pantalla para dar nombre al cdigo de SAS que se desee guardar.

    Introduccin al manejo de datos, utilizando SAS 23

  • Introduccin al manejo de datos, utilizando SAS 24

    En todo caso, antes de cerrar SAS, sale un cuadro con la pregunta (en ingls, para

    las versiones que nos ocupan) equivalente a: Desea guardar lo que est escrito en

    el Editor? Si respondemos que s (seleccionando y haciendo clic en YES), van

    saliendo las opciones anteriormente descritas, y que se muestran para el ejemplo de

    las ranas en las Figuras 8 y 9.

    Tamao de las bases de datos guardadas en SAS

    Prcticamente no hay lmite para el tamao de las bases de datos que se guarden en

    SAS. El lmite es el tamao del disco duro de la computadora. Por supuesto, para

    bases de datos muy grandes, los procesos del programa pueden tardar minutos,

    horas, o hasta das. Generalmente, esto sucede slo cuando se manejan datos de

    poblaciones muy grandes, como por ejemplo, datos de los habitantes de pases

    enteros. En ciencias agropecuarias, puede haber bases de datos muy grandes en

    anlisis genticos, pero, para la mayora de la investigacin en agronoma y ciencia

    animal, las bases de datos no son muy grandes, y el programa corre en fracciones

    de segundo.

    Acceso a los cdigos guardados

    Los cdigos guardados pueden encontrarse a travs del dibujo del flder amarillo

    abierto, o con File, y luego Open. Cuando se abre un cdigo que se encuentra

    guardado, se abre en el Editor, por lo tanto, para ejecutarlo, basta oprimir Run; y

    se ejecutarn todos los cdigos guardados, en el orden de aparicin en el Editor.

    Por supuesto, si se desea ejecutar uno solo de una serie de cdigos, basta con

    sombrearlo y luego oprimir Run;.

  • CAPTULO 5

    Los programas de SAS

    En SAS las instrucciones (llamadas programas o cdigos de SAS) se escriben en

    la ventana del editor. El Enhanced Editor, disponible de la versin de SAS 8.2 en

    adelante, escribe en letras de colores que ayudan a verificar de un vistazo que el

    cdigo est correcto. Las porciones incorrectas quedan resaltadas en rojo.

    Las instrucciones de un cdigo se van a ejecutar en el orden en el que se escriban

    (esto hay que tenerlo siempre presente). Todas las instrucciones, o el final de una

    serie de instrucciones deben terminar en punto y coma (; ).

    Por lo anterior, cuando un programa no corra bien, primero hay que verificar que:

    1. No se haya olvidado una ; 2. Todas las palabras estn correctamente escritas, y 3. El orden de las palabras en los programas cdigos.

    Acerca de los comentarios

    Dentro de un cdigo pueden insertarse comentarios. Es aconsejable hacerlo,

    especialmente si se piensa utilizar el mismo cdigo en un futuro, para tener una

    referencia de lo que hace cada parte del cdigo. Dentro de un comentario ( comentario;), se puede escribir cualquier cosa; todo lo que se encuentre dentro de y ; , no va a ser ledo por SAS.

    Sin embargo, con respecto a la escritura de cdigos y comentarios, es preciso

    sealar que:

    a) LOS COMENTARIOS NO SE DEBEN DE COLOCAR EN MEDIO DE UNA INSTRUCCIN,

    Introduccin al manejo de datos, utilizando SAS 25

  • b) NO se deben UTILIZAR las PALABRAS de SAS como nombre de una variable, o como nombre de archivo, o como palabra alguna que sea para uso

    del programador,

    c) NO se debe usar para codificar (pero se puede utilizar dentro de un comentario), la LETRA ; solo se pueden usar las 26 letras que existen en

    ingls, puesto que los programas estn escritos en ese idioma.

    Por ejemplo: Si se quiere escribir:

    DATA run;

    INPUT rana tamao salto;

    CARDS; Tambin puede escribirse DATALINES; 1 1 16

    2 2 18

    3 3 17

    4 1 12

    5 2 17

    6 3 21

    7 1 15

    8 2 16

    9 3 17

    ;

    tamao 1= chico, tamao 2 = mediano; tamao 3 = grande; Run;

    El programa no va a correr, porque:

    1. El archivo se llama run (palabra SAS)

    2. El nombre de la segunda variable (tamao) tiene una

    3. Se escribi un comentario despus de CARDS. La instruccin completa incluye la palabra CARDS y todos los datos hasta el final. Se trata de una sola

    Introduccin al manejo de datos, utilizando SAS 26

  • instruccin, aunque tenga intercalada un ; despus de CARDS, por lo que al

    colocar el comentario en ese lugar, se interrumpe la instruccin.

    4. Dentro del comentario: tamao 1= chico, tamao 2 = mediano; tamao 3 = grande; se puso una ; de ms, despus de la palabra mediano.

    No importa si dentro de cada cdigo se intercalan letras maysculas y minsculas, ni

    se requiere dejar espacios antes o despus de cada orden. Sin embargo, es mucho

    ms fcil entender de qu se tratan los cdigos, encontrar posibles errores, y/o

    modificar un cdigo para utilizarlo en otra ocasin, si se sigue un cierto orden.

    Para algunos casos de manejo o de anlisis de datos, quiz sea preferible utilizar

    cdigos ya hechos con anterioridad, como una receta de cocina, que NO se debe

    variar, excepto para cambiar nombres de variables, de base de datos y de archivos.

    Recomendacin

    Cuando se manejan datos, especialmente cuando las bases de datos tienen muchas

    observaciones y/o variables (miles o millones), a veces es necesario o aconsejable,

    inventar una pequea base de datos, correrla con el cdigo que est a prueba,

    verificar que el cdigo est haciendo lo que se desea, y luego cambiar el nombre de

    la base de datos con la que verdaderamente se quiere trabajar. Tambin se

    recomienda, antes de manejar los datos, hacer una copia de la base de datos

    original, y luego manejar la copia, para que si hubiese algn problema, se tenga un

    respaldo.

    Un cdigo de trabajo en SAS usualmente incluye:

    DATA nombre el nombre del archivo o de la base de datos a trabajar; PROC nombre el nombre del procedimiento a utilizar (qu se va a hacer); run; indica el fin del cdigo ; Algunos programadores acostumbran escribir run; quit;, y no solo run;, hasta el

    final del cdigo. Esto es opcional.

    Introduccin al manejo de datos, utilizando SAS 27

  • Un nuevo paso o una nueva etapa del programa tambin puede indicarse al iniciar la

    siguiente lnea con DATA o PROC, pero el fin final, debe tener run; o run; quit;

    Procedimientos y rdenes (o instrucciones) de SAS

    Un procedimiento es un programa prefabricado, que por su importancia, tiene un

    nombre para llamarlo y hacerlo que ejecute sobre una base de datos. Ejemplos son

    los anlisis de regresin o los anlisis de varianza. Algunas instrucciones, que

    generalmente realizan acciones menos complejas que los procedimientos, no estn

    precedidas por la palabra PROC.

    Algunos procedimientos y rdenes son:

    Procedimientos (empiezan con PROC):

    a) para manejo de datos: freq, means, y sort. b) para anlisis de datos: glm, reg, y mixed.

    rdenes (van despus de DATA):

    c) merge, set, if ..then, drop, input, put, y rename

    Si los cdigos son muy largos, pueden escribirse primero en Word y luego cortar y

    pegar en el Editor de SAS. Sin embargo, es preferible hacer cdigos sencillos y

    cortos, y primero correrlos en archivos de prueba, que sirvan exclusivamente para

    verificar que los programas realicen lo que se espera que hagan. Una vez que el

    programa corri con el archivo de prueba, se modifica la parte del cdigo que se

    refiere a que archivo debe leer SAS, y se le escriben los comentarios apropiados.

    Manejo de los resultados

    Se recomienda ir copiando en Word los resultados que aparezcan en el Output, e

    ir limpiando la ventana del Output entre corridas. Alternativamente, en la ventana de

    Resultados (vertical, a la izquierda), se puede ir abriendo cada resultado, pues

    corresponde uno para cada cdigo.

    Introduccin al manejo de datos, utilizando SAS 28

  • Existen varias opciones que controlan como saldrn los resultados de SAS al Output. Slo unas cuantas son las que se utilizan en forma rutinaria para cambiar

    los defaults. Para ver la lista completa de opciones disponibles, se escribe:

    proc options;

    Run;

    Para utilizar una opcin, escriba la palabra OPTIONS como parte del cdigo de SAS,

    i.e.

    Options linesize= 80 nodate;

    En este caso, la opcin va a dar un tamao de lnea de 80 caracteres. Nodate es

    una opcin que pide no imprimir la fecha en las hojas de resultado de SAS.

    Las opciones se pueden poner en la primera lnea que se escriba, pero puede estar

    en cualquier lugar del cdigo, excepto en medio del mismo. Si se escribe otra opcin

    despus, se cancelan las primeras.

    NOTA IMPORTANTE: Si se desea detener la ejecucin de un programa, se debe escribir QUIT, STOP, o ABORT, o mejor an, esperar pacientemente hasta que SAS

    termine de ejecutar el programa. Nunca se debe cerrar SAS para tratar de detener un

    programa, pues los datos van a desaparecer hasta donde hayan sido ledos por el

    programa en ejecucin. Es recomendable tener un respaldo de la base de datos original, y utilizar las copias para ejecutar todos los programas deseados, ya que un error de cdigo puede hacer que se borren o se modifiquen los archivos.

    Introduccin al manejo de datos, utilizando SAS 29

  • Introduccin al manejo de datos, utilizando SAS 30

  • CAPTULO 6

    La base de datos Los archivos de datos en SAS tienen una estructura bien definida: las variables se

    encuentran en columnas (de hecho, a veces se les llama columnas), mientras que

    las observaciones estn en hileras, en forma parecida a las tablas de Excel, como

    se vio en el ejemplo de las ranas. Sin embargo, se pueden inter convertir las hileras

    en columnas con proc transpose (que no se va a tratar en esta obra). En caso de

    que se requiriese efectuar este tipo de manipulacin de los datos, se recomienda

    utilizar Excel. Esto puede hacerse exportando los datos de SAS hacia Excel

    (tambin utilizando la funcin del Wizard, como se ver despus para la

    importacin de datos de Excel hacia SAS), efectuar el manejo que se desee en

    los datos, y reimportando a SAS, o bien, manipulando los datos originales desde el

    principio en Excel. Sin embargo, en este caso (y siempre), se debe cuidar que

    todas las celdas de Excel tengan el formato correcto; es decir, que no vaya a haber

    un formato de texto donde debera haber un formato de fecha, o un formato de

    moneda donde deba ser de nmero, etc. Cuando esto sucede, parte de la

    informacin se va a transferir a SAS en forma incorrecta o simplemente no se va a

    transferir, ya sea toda, o parte de la tabla de Excel.

    Los datos pueden pegarse desde un editor de textos, escribirse directamente en la

    ventana del Editor de SAS, o bien, importarse del editor de textos o de una hoja

    de clculo (como Excel) a un archivo de SAS, y hacer este archivo, ya sea

    temporal o permanente. Tambin se pueden exportar los datos. En el men se

    encuentra un ayudante (Wizard) para importar o para exportar.

    Introduccin al manejo de datos, utilizando SAS 31

  • Como ejemplo, vamos a importar una base de datos desde Excel (un archivo de un

    experimento de maz), y luego vamos a exportar una base de datos de vacas

    lecheras hacia Excel.

    1. Importar bases de datos de Excel

    Supongamos que tenemos una base de datos Evaluacin de genotipos de maz en

    Excel (una porcin de esta base de datos se encuentra en el Apndice). Debemos

    importar esta base de datos hacia SAS. Esta base de datos se puede importar

    mediante un cdigo escrito en el Editor para que quede en SAS un archivo igual al

    de Excel. Sin embargo, para analizar esos datos, los cdigos a usar tendran que

    ser mucho ms complicados porque en el archivo hay comentarios (como se ve en el

    Apndice), y los nombres de las variables no son los ms adecuados para utilizar los

    procedimientos de SAS, por lo que es recomendable (aunque no siempre

    necesario, segn la versin) limitarse a ocho letras, como se mencion antes. Con

    una base de datos como la del Apndice, habra que indicarle a SAS que lneas o

    hileras no debe leer, cual de las hileras contiene el nombre, y muchos otros detalles.

    Es preferible volver a guardar el archivo de Excel con las siguientes modificaciones:

    1. Eliminar el ttulo: Evaluacin.

    2. Hacer que los nombres de las columnas (variables) tengan ocho o menos letras y que no contengan espacios, guiones, puntos, etc. etc. El nombre debe

    empezar con una letra, y se pueden incluir nmeros y guin bajo.

    3. Que en los datos perdidos (inexistentes en esta base de datos) haya espacio en blanco, no puntos, ni ceros.

    4. Que si hubiera alguna fecha (no en este caso) fuera seguro que el formato de celda en Excel, es de Fecha.

    5. Eliminar los comentarios.

    6. Eliminar las unidades de medida. Slo deben quedar los nombres de las variables y las variables.

    Introduccin al manejo de datos, utilizando SAS 32

  • 7. Guardar los cambios en Excel con otro nombre (porque este archivo tiene menos informacin que el original), para utilizar este archivo para SAS. Hay que cerrar el archivo antes de poder importarlo a SAS.

    Algunos programadores prefieren guardar sus bases de datos ya listas para ser

    exportadas a SAS, en formato CSV (comma delimited). Todas las instrucciones que

    siguen son vlidas para esta opcin, nicamente se elige, en lugar de Excel, CSV,

    y todo lo dems se hace exactamente igual.

    El archivo en Excel para este ejemplo, queda como se ve en la Figura 10.

    Figura 10. Archivo de datos de Excel editado para ser exportado a SAS.

    Para importar los datos de Excel (Figuras 11 a 17):

    a) en File del men de SAS, buscar Import Data y hacer clic.

    Introduccin al manejo de datos, utilizando SAS 33

  • b) aparece una ventana (este es el Wizard) con el default de importar los datos de Excel, oprimir NEXT.

    c) aparece otra ventana para escribir la localizacin del archivo en Excel; es ms fcil, sin embargo, oprimir BROWSE y buscar el archivo.

    d) localizar el archivo y oprimir ABRIR.

    e) en la ventana dar OK.

    f) seleccionar la hoja de Excel que se desea importar y dar NEXT.

    g) seleccionar el archivero en donde se desea guardar la base de datos. Si se selecciona el Default WORK, el archivo ser temporal, por lo que se borrar

    tan pronto se termine de trabajar esa sesin de SAS. En esa misma ventana

    se le debe dar un nombre al archivo importado; en este caso, el nombre es

    Maiz1. Recuerde: slo se permiten guiones bajos, y no se permite un nombre

    que contenga espacios. Sera incorrecto poner Maiz 1 o Maiz-1. Tambin es

    mejor limitarse a ocho caracteres. Una vez seleccionado todo esto, oprimir

    NEXT.

    h) en la siguiente ventana oprimir FINISH.

    Introduccin al manejo de datos, utilizando SAS 34

  • Figura 11. Utilizacin del Wizard para importar datos hacia SAS.

    Figura 12. Seleccin del programa de donde se van a importar datos a SAS.

    Introduccin al manejo de datos, utilizando SAS 35

  • Figura 13. Bsqueda de la localizacin del archivo a importar.

    Figura 14. Seleccin del archivo a importar.

    Introduccin al manejo de datos, utilizando SAS 36

  • Figura 15. Aceptar el archivo seleccionado.

    Figura 16. Seleccin del archivero donde se va a guardar el archivo a importar.

    Introduccin al manejo de datos, utilizando SAS 37

  • Figura 17. Mensaje que aparece en el Log despus de una importacin exitosa.

    Sale un mensaje en el Log de que el archivo temporal Work.maiz1 fue

    exitosamente creado (Figura 17). Para ver el archivo vamos a la ventana vertical a la

    izquierda (la del ambiente de SAS), en Libraries abrimos WORK y encontramos el

    archivo, tal y como se ve en la Figura 18.

    Si no se van a hacer todos los anlisis en ese momento, es preferible guardar el

    archivo en forma permanente. Es muy fcil despus borrarlo (con DELETE), pero por

    lo pronto conviene tenerlo disponible. Se recordar que ya habamos creado el

    archivero EJS. Ese es el archivero que vamos a utilizar para guardar MAIZ1. Escriba

    lo siguiente en el Editor, y despus oprima el dibujo de RUN:

    DATA ejs.maiz1; set maiz1;

    run ;

    y!Listo! La base de datos es permanente.

    Introduccin al manejo de datos, utilizando SAS 38

  • Figura 18. Verificando que los datos se hayan importado correctamente.

    2. Exportar bases de datos de SAS hacia Excel

    Una razn por la que se suelen exportar los datos de SAS a Excel, es porque las

    grficas en Excel son ms atractivas y fciles de hacer. El procedimiento es

    prcticamente el mismo (en reversa) que para importar utilizando el Wizard (Figuras

    19 a 22).

    Por ejemplo. Supongamos que tenemos una pequea base de datos en SAS y que

    tenemos una base de datos ms grande en Excel. Para unir esas bases de datos

    podemos:

    a) importar el archivo de Excel hacia SAS o b) exportar los datos de SAS hacia Excel. c) unir los dos archivos.

    Introduccin al manejo de datos, utilizando SAS 39

  • Supongamos que la base en Excel est en constante aumento. Puesto que

    aumentar datos es ms fcil hacerlo en Excel, decidimos que es preferible exportar

    los datos que se tienen en SAS.

    El archivo en SAS se llama exportar y est en la carpeta Ejs.

    Vamos a File, export data y damos clic:

    Figura 19. Seleccin de la opcin de exportar en el Wizard.

    Aparece una nueva ventana; ah, debajo de Choose the source SAS dataset

    (seleccione la base de datos de origen), en donde dice Library: seleccionar EJS, y

    en donde dice: Member, seleccione el archivo llamado Exportar, y luego haga clic

    en Next:

    Introduccin al manejo de datos, utilizando SAS 40

  • Figura 20. Utilizacin del Wizard para exportar datos de SAS.

    Dejamos los defaults, que incluyen exportar a Excel y damos clic en Next.

    Entonces se abre la ventana que sirve para buscar la carpeta de Excel (haciendo

    clic en Browse) en donde vamos a guardar la base de datos que queremos

    exportar. En este caso, la carpeta se llama Curso de SAS. Al archivo le nombramos

    Masdatos, y finalmente, damos clic en Guardar.

    Introduccin al manejo de datos, utilizando SAS 41

  • Figura 21. Buscando el lugar donde se van a guardar los datos a exportar.

    Figura 22. Dndole nombre al archivo a exportar.

    Introduccin al manejo de datos, utilizando SAS 42

  • En la siguiente ventana damos clic en Ok, y finalmente, en la prxima ventana

    ponemos un nombre (en este caso le pusimos maiz) para completar el proceso y

    damos clic en Finish. El archivo en Excel se llama Masdatos.

    3. Otras formas de importar o exportar (sin Wizard)

    Se pueden importar y exportar datos sin utilizar el Wizard. Esto es un poco ms

    complicado y generalmente, el Wizard es la opcin ms indicada y suficiente. Slo se

    ofrecen en este captulo algunos comentarios y un ejemplo como informacin

    general.

    Para que SAS sepa que hacer con una base de datos hay que especificar: que tiene que ir a donde, o que tiene que venir de donde.

    Se puede utilizar la orden PUT para exportar o INPUT para importar. En estos casos

    es muy importante saber si los datos van a ser exclusivamente numricos o si van a

    contener otros caracteres.

    Los datos numricos contienen slo nmeros. Los nmeros pueden ser positivos o

    negativos, y contener decimales. Se pueden realizar operaciones matemticas con

    ellos, como sumas, restas, y todas las dems.

    Los datos de carcter pueden contener nmeros y letras, guin bajo, o

    combinaciones de todo lo anterior, pero no se pueden realizar operaciones

    matemticas con ellos.

    Por ejemplo, la identificacin de animales (ID) puede contener slo nmeros: 00001,

    y a veces nmeros y letras: 0001ENE_04, si se desea informar, por ejemplo, que es

    el primer animal o animal 1, y que naci en enero de 2004, o puede ser:

    01HO_Ene05, para informar que fue el primer nacimiento, que fue Holstein, y que

    naci en enero de 2005. Por supuesto, esto es un ejemplo, pues la identificacin de

    Introduccin al manejo de datos, utilizando SAS 43

  • los animales va a seguir las normas locales, regionales, nacionales o internacionales

    que se deseen o deban seguir.

    Si al menos una observacin contiene un carcter, y no slo nmeros, la variable

    completa se considera de tipo carcter.

    SAS lee primero algunas observaciones de cada columna para decidir el formato

    de toda la columna. Si no se especifica en el cdigo que la variable a importar es de

    carcter, y no aparece un carcter en las primeras lneas de datos, SAS va a

    suponer que es numrica, pues es el default, y todas las observaciones que

    contengan algo ms que nmeros, se van a considerar datos perdidos. Para pedirle

    a SAS que una variable sea considerada de tipo carcter, al nombre de la variable, le

    debe seguir un signo $.

    Por ejemplo: DATA Ej_2;

    INPUT ID $ peso;

    Datalines;

    123 459

    12478 670

    Ho1 500

    Ho2 564

    Ho_02 605

    HoCAN_1 532

    ;

    Run;

    Como puede verse, no importa que las columnas de datos de las variables (ID y

    peso) estn alineadas, y ntese que en las observaciones y hasta en el cdigo, se

    pueden entremezclar letras y nmeros, y maysculas y minsculas. Sin embargo, es

    mejor guardar el mayor orden posible, pues adems de que cuando hay errores de

    programacin y un programa no corre, es ms fcil encontrar los errores (o bugs,

    Introduccin al manejo de datos, utilizando SAS 44

  • como coloquialmente se les nombra en ingls), en un programa escrito con cuidado,

    y en forma consistente, que en uno en desorden.

    En la Figura 23 vemos al archivo Ej_Dos, que se encuentra en el archivero WORK,

    que es en donde se guard por no haberse especificado un archivero permanente.

    Para guardar los datos en la carpeta permanente EJS, por ejemplo, se hubiera

    escrito: DATA Ejs.Ej_2.

    Figura 23. Ejemplo de como se ven los datos de un archivo.

    Es importante sealar que los nombres de las variables deben contener menos de 32

    carcteres (en la versin 7 y anteriores, slo se permita un mximo de ocho). Cada

    nombre debe empezar con una letra o con un guin bajo. Los nombres de variables

    tambin pueden incluir nmeros. Aqu vamos a restringirnos a nombres de ocho

    Introduccin al manejo de datos, utilizando SAS 45

  • Introduccin al manejo de datos, utilizando SAS 46

    carcteres o menos, y utilizar la primera letra en mayscula. El nmero de variables

    (columnas) que se pueden incluir en una tabla de SAS es prcticamente ilimitado.

  • CAPTULO 7

    Ms acerca de lectura de datos por SAS En este captulo se resumen las maneras de hacer que SAS lea los datos que se

    necesiten trabajar. Los mtodos ms usuales ya han sido cubiertos. Este captulo es

    opcional. Puede pasarse al Captulo 8 sin ningn inconveniente.

    1. Creando un archivo de datos con la orden DATA

    Con esta opcin, los datos crudos (antes del anlisis) son parte del cdigo de SAS y

    se escriben en el Editor.

    El siguiente programa o cdigo con la orden DATA crea un archivo de datos llamado

    ENCUESTA con 10 observaciones y siete variables. Las variables se llaman ID,

    SEXO, EDAD, ING, R1, R2, y R3. Los datos corresponden a una encuesta en donde

    ING significa los ingresos anuales totales, en miles, R1 a R3 son la calificacin con

    que los individuos (ID) evaluaron a tres productos orgnicos que piensan lanzarse al

    mercado. La palabra INPUT define a las variables que deben leerse en cada lnea de

    datos. La palabra DATALINES le indica a SAS que el proceso de la palabra DATA ha

    sido completado y que la siguiente lnea contiene datos reales. Ntese que las lneas

    que contienen los datos no terminan en punto y coma. En lugar de la palabra DATALINES se puede utilizar la palabra CARDS. Las dos son equivalentes. El punto

    y coma antes de PROC PRINT es opcional, pero define mejor cuales son los datos.

    Proc print se utiliza para que los datos aparezcan en el Output, de tal manera que

    no sea necesario abrirlos desde su archivo para verlos, y para que puedan copiarse

    a Word e imprimirse.

    options nocenter; DATA encuesta; INPUT id sexo $ edad ing r1 r2 r3 ; DATALINES; 1 F 35 17 7 2 2

    Introduccin al manejo de datos, utilizando SAS 47

  • 17 M 50 14 5 5 3 33 F 45 6 7 2 7 49 M 24 14 7 5 7 65 F 52 9 4 7 7 81 M 44 11 7 7 7 2 F 34 17 6 5 3 18 M 40 14 7 5 2 34 F 47 6 6 5 6 50 M 35 17 5 7 5 ; PROC PRINT; RUN;

    La salida (lo que se ve en el Output) de esta corrida es la siguiente:

    OBS ID SEXO EDAD ING R1 R2 R3 1 1 F 35 17 7 2 2 2 17 M 50 14 5 5 3 3 33 F 45 6 7 2 7 4 49 M 24 14 7 5 7 5 65 F 52 9 4 7 7 6 81 M 44 11 7 7 7 7 2 F 34 17 6 5 3 8 18 M 40 14 7 5 2 9 34 F 47 6 6 5 6 10 50 M 35 17 5 7 5

    La variable SEXO en la orden INPUT est seguida por un signo de dlar ($) para

    indicar que esta variable es de carcter. Si no se especifica la instruccin, SAS

    supone que las variables son numricas. Si entonces encuentra un carcter (una

    letra o smbolo), le va a asignar un valor perdido (.) a esa observacin. Por ejemplo,

    si se quita el signo de dlar, como se ve en el siguiente cdigo:

    DATA encuesta; INPUT id sexo edad ing r1 r2 r3 ; DATALINES; 1 F 35 17 7 2 2 17 M 50 14 5 5 3 33 F 45 6 7 2 7 49 M 24 14 7 5 7 65 F 52 9 4 7 7 81 M 44 11 7 7 7 2 F 34 17 6 5 3 18 M 40 14 7 5 2 34 F 47 6 6 5 6 50 M 35 17 5 7 5 ; PROC PRINT; RUN;

    Introduccin al manejo de datos, utilizando SAS 48

  • El resultado de la corrida se ver as:

    OBS ID SEXO EDAD ING R1 R2 R3 1 1 . 35 17 7 2 2 2 17 . 50 14 5 5 3 3 33 . 45 6 7 2 7 4 49 . 24 14 7 5 7 5 65 . 52 9 4 7 7 6 81 . 44 11 7 7 7 7 2 . 34 17 6 5 3 8 18 . 40 14 7 5 2 9 34 . 47 6 6 5 6 10 50 . 35 17 5 7 5 2. Leyendo datos con sealador de columna

    A veces es til decirle a SAS exactamente donde encontrar el inicio y el final de una

    observacin o columna. Por ejemplo, cuando los datos contienen una o ms

    variables de carcter con diferentes longitudes o que contengan espacios. Por

    ejemplo, se desea importar las variables llamadas nombre, edad, ciudad y estado de

    una base de datos:

    data ejem_dos; input nombre $ 1-20 edad ciudad $ 29-37 estado $ ; datalines; Oliver Schabenberger 33 Lansing MI Juan E. Domnguez 37 New York NY ; run; proc print data= estosdat; run;

    Observemos que hay un $ despus de nombre, seguido de la posicin en que se

    debe encontrar el nombre; en este caso, entre las posiciones 1 y 20 de datalines.

    Despus viene una variable numrica: la edad; aqu no se puso ni $ ni la posicin

    en la columna, porque se debe leer el nmero entero. Luego viene ciudad, con su

    signo $ que indica que es una variable de carcter, y la indicacin de donde a donde

    debe leerse. Finalmente, tenemos estado, indicando que es un carcter, pero sin

    especificar su posicin. No es necesario para la variable ESTADO porque su entrada

    comienza en la columna siguiente a la variable anterior y no contiene espacios en

    blanco, adems, siendo la ltima variable, no es necesario saber su longitud total.

    Introduccin al manejo de datos, utilizando SAS 49

  • En resumen: Despus de variables de texto, escribir $. Si el nombre de la variable

    incluye espacios, indicar las columnas de datalines (las lneas de datos) en donde

    puede encontrarse la variable (las variables en SAS por default estn delimitadas

    por espacios). Los datos del archivo EJEM_DOS aparece as:

    OBS NOMBRE EDAD CIUDAD ESTADO 1 Oliver Schabenberger 33 Lansing MI 2 Juan E. Dominguez 37 New York NY

    Si el sealador de $29-37 despus de CIUDAD se reemplaza con un simple $ para

    indicar una variable de carcter en la orden INPUT, pero sin indicar de donde a

    donde se debe leer, sto es lo que sucede:

    data ejem_dos; input nombre $1-20 edad ciudad $ estado $ ; datalines; Oliver Schabenberger 33 Lansing MI Juan E. Dominguez 37 New Cork NY ; run; proc print data=ejem_dos; run;

    OBS NOMBRE EDAD CIUDAD ESTADO 1 Oliver Schabenberger 33 Lansing MI 2 Juan E. Domnguez 37 New York

    Para la segunda observacin, SAS encuentra los carcteres 'New' y los asigna a la

    variable CIUDAD suponiendo que el espacio entre 'New' y 'York' delimita a las dos

    variables. Los carcteres 'York' son asignados a la siguiente variable de la orden

    INPUT, que es ESTADO.

    3. Leyendo datos escritos de corrido

    Suponga que un archivo contiene tres variables, X, Y, y Z. Un cdigo con DATA

    podra ser:

    data XYZ; input x y z; datalines;

    Introduccin al manejo de datos, utilizando SAS 50

  • 1 1 12.4 1 2 11.3 1 3 1.4 2 1 2.1 2 2 19.4 ; run;

    SAS tambin puede leer observaciones mltiples en cada lnea de datos.

    Simplemente aada el smbolo @@ al final de la declaracin de input, de la

    siguiente manera:

    data XYZ; input x y z @@; datalines; 1 1 12.4 1 2 11.3 1 3 1.4 2 1 2.1 2 2 19.4 ; run;

    Por el smbolo @@, SAS lee cada lnea de datos y va llenando las variables X, Y, y

    Z en turno, y continuar llenando las variables hasta que llegue al final de la lnea.

    Sin el smbolo @@, se habra pasado a la siguiente lnea tan pronto la ltima

    variable estuviese llena, dejando fuera datos, como ocurri en el ejemplo anterior

    cuando ley New y dej fuera York, y evit que el valor NY siquiera fuese ledo.

    4. Leyendo datos de archivos ASCII

    Algunas veces se puede obtener gran cantidad de datos que se encuentran escritos

    en archivos ASCII, que generalmente tienen extensin TXT. Esto ocurre con editores

    de texto, como el Notepad de Microsoft, o muchos otros, que sirven especficamente

    para guardar datos (existen editores de texto que se pueden obtener gratis desde

    Internet). Algunos programas, como C, C++, Fortran, y otros, requieren que la

    informacin se encuentre en archivos de extensin TXT. Sin embargo, generalmente

    Introduccin al manejo de datos, utilizando SAS 51

  • es ms fcil editar los datos primero en SAS, y despus, enviarlos al programa de

    anlisis que se desee.

    Tambin es posible que los archivos que se deban analizar con SAS, de origen

    vengan en archivos ASCII. Con frecuencia, trabajar con ese tipo de archivos es ms

    conveniente que con archivos de hojas de clculo, porque los archivos ASCII ahorran

    espacio, y a veces son preferibles cuando las variables contienen muchas

    observaciones.

    Hay dos formas para hacer que SAS lea un archivo ASCII utilizando la orden DATA:

    una es usando slo la palabra INFILE y otra es con la palabra FILENAME ms la

    palabra infile.

    Infile

    Utilice la palabra infile antes de la palabra INPUT. La estructura de la orden

    INPUT no cambia. Es exactamente como si se fuera a copiar el contenido del archivo

    ASCII dentro de la orden DATA despus de la palabra DATALINES, slo que ahora

    debe especificar en la orden INFILE cual archivo se debe leer, y donde se encuentra.

    En el ejemplo de cdigo que sigue, el archivo de llama Do.txt y se encuentra en el

    drive D, dentro de una serie de flderes. Por ejemplo:

    data readasc; infile 'D:\investig\Toxina\Data2007\DO.txt'; input lugar rancho muestra DO; run; Filename

    FILENAME asocia un archivo con un nombre corto dentro de un programa de SAS.

    La palabra FILENAME debe aparecer afuera de la orden DATA. Por ejemplo:

    filename toxic 'D:\investig\Toxina\Data2007\DO.txt'; data readasc; infile toxic;

    Introduccin al manejo de datos, utilizando SAS 52

  • input lugar rancho muestra DO; run;

    El archivo D:\investig\Toxina\Data2007\DO.txt ahora se encuentra asociado con el

    nombre ms corto TOXIC. La palabra INFILE dentro de la orden DATA ahora se

    refiere al nombre corto. A este atajo en el lenguaje que usa para SAS, que parecido a

    utilizar un apodo, se le conoce como un fileref.

    Si las columnas del archivo de ASCII no estn delimitadas por espacios (por ejemplo,

    los archivos de MSExcel que se guardan como archivos de texto *.prn estn

    delimitados por comas), se pueden aadir las opciones de delimitantes dentro de la

    declaracin de INFILE. Por ejemplo, para especificar que los delimitantes entre

    variables son comas, se escribe: delimiter = ,; tal como se ve a continuacin:

    filename toxic 'D:\investig\Toxina\Data2007\DO.txt'; data readasc; infile toxic delimiter=','; input lugar rancho muestra DO; run;

    5. Para saltar informacin que SAS no debe leer

    Muchos archivos contienen informacin del encabezado, que no debe ser parte de

    los datos para SAS, como en el caso de los datos en el Apndice. Para saltarse

    registros al principio del archivo, utilice la opcin FIRSTOBS= . Para leer nicamente

    un nmero especfico de registros, utilice la opcin OBS = . Por ejemplo:

    filename toxic 'D:\Investig\Toxina\Data2007\DO.txt'; data readasc; infile toxic delimiter=',' firstobs=12 obs=100; input lugar rancho muestra DO; run;

    Slo se van a leer 100 observaciones del archivo D:\Investig\Toxina\Data2007\DO.txt

    comenzando por la 12a lnea, y se van a buscar comas como delimitantes de las

    variables.

    Introduccin al manejo de datos, utilizando SAS 53

  • Introduccin al manejo de datos, utilizando SAS 54

  • CAPTULO 8

    Algunos procedimientos de SAS

    A partir de este captulo, se dar una especie de lista de cdigos. Todos estos deben

    de escribirse en la ventana del Editor, y hacer referencia a los archivos que se

    deseen manejar o analizar.

    1. Para ordenar los datos

    A veces sucede que se tienen los datos revueltos, ya sea por haberlos capturado

    poco a poco a travs del ao, y/o haber unido varias bases de datos ya una vez

    guardados en SAS, o por cualquier otra causa. Tambin puede ser til ordenar o

    reordenar las bases de datos por orden alfabtico o por fecha de captura o por

    alguna caracterstica, como nmero de lactancia, etc., para revisar ms fcilmente

    los datos. Por otra parte, ordenar es un paso indispensable antes de utilizar ciertas

    rdenes, como merge (pgina 66), por ejemplo. Para reordenar los datos, se utiliza

    la orden proc sort.

    Proc sort

    Ordena los datos por la variable o las variables que seleccionemos.

    El cdigo bsico es:

    proc sort data=nombre; *nombre es el nombre del archivo;

    by id; *by id le indica a SAS por cual variable debe de ordenar los datos, en este

    caso, por la variable llamada id;

    *o puede ser, por ejemplo:by id raza sexo etc;

    Run;

    Introduccin al manejo de datos, utilizando SAS 55

  • Para eliminar datos repetidos

    Tambin se puede pedir que se eliminen los datos repetidos en la hilera de la

    variable por la cual se est ordenando. Esto se hace con la orden nodupkey. Por

    ejemplo, si se desea eliminar identificaciones repetidas (id iguales) de la base de

    datos llamada nombre, se debe escribir:

    Proc sort data=nombre nodupkey; By id; Run; 2. Para verificar la calidad de los datos y/o resumir informacin de los datos crudos

    En agricultura y ganadera, a veces se realizan estudios retrospectivos, que tambin

    se denominan observacionales. Esto significa que los datos no fueron obtenidos

    siguiendo un diseo especfico, y por lo tanto, generalmente no estn listos para

    analizarse tal como fueron capturados. En estos casos, especialmente, pero no

    exclusivamente, conviene verificar tanto la calidad de los datos que se han

    recopilado, como si hay suficientes datos en todas las categoras de inters para

    realizar anlisis valiosos. Usar proc freq y proc means son dos formas de obtener

    informacin rpidamente de la base de datos con la que estemos trabajando.

    Proc freq

    Con Proc freq se obtienen frecuencias de las variables de inters. De esta manera,

    se puede verificar que se tengan suficientes datos para un anlisis estadstico

    confiable, adems de que se pueden ver algunas tendencias generales de los datos.

    El cdigo de proc freq, que saca las frecuencias de las variables que se especifiquen,

    a la ventana del Output, es:

    proc freq data= nombre; tables variable1; *puede ser variable1*variable2*variablen; run;

    Introduccin al manejo de datos, utilizando SAS 56

  • Por ejemplo, se est trabajando con una base de datos de cabras (gotas.work1 es el

    nombre del archivo), y se va a estudiar que tan estacionales son las cabras en esa

    poblacin. Para tener una idea, queremos obtener las frecuencias por mes de

    nacimiento (mo_brth es el nombre de esa variable). El cdigo que se usa es el

    siguiente:

    proc freq data=goats.work1; options nodate; table mo_brth; run;

    El resultado aparece en el Output, y contiene las frecuencias directas (frequency), el

    porcentaje (percent), las frecuencias acumuladas (cumulative frequency) y el

    porcentaje acumulado (cumulative percent), as como la cantidad de observaciones

    en donde (en este caso) la variable mo_brth tiene datos perdidos (frequency

    missing):

    TheFREQProcedureCumulativeCumulativemo_brthFrequencyPercentFrequencyPercent1198556.83198556.8325948520.457934027.2738928630.6916862657.9746178321.2423040979.2153069910.5526110889.766122574.2127336593.97742161.4527758195.42813250.4627890695.88913610.4728026796.351020200.6928228797.041133551.1528564298.191252541.81290896100.00FrequencyMissing=26002

    Si se prefiere sacar los datos a un archivo, se incluye la orden:

    tables variable1/noprint out = nombre_archivo;

    * la palabra noprint puede ir antes o despus de la palabra out que especifica a

    donde se desea enviar los resultados;

    Introduccin al manejo de datos, utilizando SAS 57

  • Por ejemplo, si se desea que las frecuencias aparezcan en el archivo temporal

    check, se escribira:

    proc freq data=goats.work1; options nodate; table mo_brth/noprint out = check; run;

    Si el archivo va a ser temporal, slo hay que poner un nombre; si se prefiere que se

    guarde el archivo en forma permanente en SAS, entonces hay que indicar el

    nombre del archivero en donde debe guardarse. Si, por ejemplo, el archivero se

    llama: datos y el archivo queremos que se llame results, la orden sera:

    out=datos.results.

    Proc means

    Con proc means es fcil constatar que los datos con que estamos trabajando estn

    dentro de rangos razonables y que SAS est tomando los datos con el formato

    correcto. Por ejemplo, si se han importado datos de Excel, en ocasiones una

    columna que debera tener formato de nmeros, es importada con formato de texto

    (o viceversa), y aun cuando fsicamente se pueda ver la tabla en SAS con nmeros,

    es posible que tenga otro formato, y en este caso, de los datos de esa columna, no

    se sacarn promedios.

    Proc means se utiliza para obtener promedios, desviaciones estndares, mximos y

    mnimos de los datos. El cdigo de proc means que va a considerar todas las

    variables es simplemente:

    Proc means data= nombrearchivo; Run;

    Si slo se quiere la informacin de algunas variables, entonces, antes de la orden

    run; aadir:

    Var variable1 variable2 ..variablen;

    Y queda, por supuesto:

    Introduccin al manejo de datos, utilizando SAS 58

  • Proc means data= nombrearchivo; Var variable1 variable2 ..variablen; Run;

    Si se desean los promedios y dems informacin, correspondiente a una o ms

    variables de clasificacin (no numricas), como raza, ao, o pas, por ejemplo, el

    cdigo debe incluir la(s) variable(s) clasificatorias de las que se desee obtener la

    informacin, precedidas por la palabra by, y las variables a las que se les obtenga

    promedios, mnimos, etc., precedidas por la palabra Var.

    Por ejemplo, supongamos que se tiene un archivo (temporal, pues no lleva el nombre

    del archivero) llamado j, del cual queremos obtener informacin acerca de plantas

    susceptibles a ser atacadas por plagas. Por razones de nuestra investigacin,

    necesitamos que la informacin sea por especie de planta atacada y tipo de insecto

    plaga. Se requieren estadstica descriptiva con los promedios, desviaciones

    estndares y mximos, y mnimos de la cantidad de insectos (en cualquier estado de

    evolucin) encontrados en un muestreo y de la edad de las plantas atacadas.

    Sin embargo, para poder utilizar esta opcin de proc means, es necesario ordenar

    los datos por las variables de las cuales pretendemos obtener informacin, de la

    siguiente manera:

    proc sort data=j; by especie insecto; run;

    El cdigo que nos da la estadstica descriptiva es:

    proc means data=j; *se pretende obtener informacin de la base de datos llamada j; by especie insecto; *estas son las variables clasificatorias; VAR cantidad; *queremos saber el promedio de la cantidad de insectos encontrados en un muestreo de plantas que han sido atacadas; run;

    Introduccin al manejo de datos, utilizando SAS 59

  • Si la base de datos fuera la siguiente: Especie edad cantidad insecto roble 90 2 grillo roble 90 3 grillo roble 180 4 grillo roble 180 5 grillo cedro 90 1 grillo cedro 90 0 grillo cedro 180 7 grillo cedro 180 5 grillo roble 90 8 palomill roble 90 6 palomill roble 180 4 palomill roble 180 3 palomill cedro 90 15 palomill cedro 90 12 palomill cedro 180 6 palomill cedro 180 2 palomill *se escribi palomill, es vez de palomilla para mantener en ocho o menos el nombre;

    Ntese que existen ms variables (est la edad, que en este caso no interesa) que

    las que se utilizan en la orden de proc means.

    El output sera: TheSASSystem1especie=cedroinsecto=grilloTheMEANSProcedureAnalysisVariable:cantidadNMeanStdDevMinimumMaximum

    43.25000003.304037907.0000000especie=cedroinsecto=palomillAnalysisVariable:cantidadNMeanStdDevMinimumMaximum

    48.75000005.85235002.000000015.0000000especie=robleinsecto=grilloAnalysisVariable:cantidadNMeanStdDevMinimumMaximum

    43.50000001.29099442.00000005.0000000especie=robleinsecto=palomillAnalysisVariable:cantidadNMeanStdDevMinimumMaximum

    45.25000002.21735583.00000008.00000004

    Introduccin al manejo de datos, utilizando SAS 60

  • Este se puede copiar, editar (para que se vea una tabla ms presentable) y guardar

    en un archivo de Word, por ejemplo.

    El siguiente cdigo ordena que los datos, una vez que hayan sido ordenados por ID,

    se guarden en un archivo llamado lactone, y no permite que haya observaciones

    repetidas por la variable ID. PROC SORT DATA=lact OUT=lactone NODUPKEY; by ID; run;

    3. Para manejar la base de datos

    A veces conviene modificar un archivo; por ejemplo para efectuar algn anlisis, o

    para obtener datos derivados de los originales, o para tener archivos separados

    segn su contenido. En esta seccin se ofrecen algunas opciones para lograr lo

    anterior.

    Drop

    Para eliminar algunas variables, se utiliza la orden DROP:

    Data nombre1 (drop = variable1 variable2 .variablen); *este es el nombre del archivo en donde van a quedar grabadas todas las variables, excepto las que se estn eliminando con drop; Set nombre2; * este es el archivo original de donde se van a eliminar las variables; run;

    Si se quiere modificar el mismo archivo, puede ponerse el mismo nombre tanto en

    data como en set, pero es preferible poner otro nombre, verificar que se obtiene lo

    que uno espera, y entonces ya cambiarle el nombre al archivo. Hay que tener

    paciencia o puede