La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Introducción a SAS/BASE, lenguaje propio de la plataforma SAS.

Presentaciones similares


Presentación del tema: "Introducción a SAS/BASE, lenguaje propio de la plataforma SAS."— Transcripción de la presentación:

1 Introducción a SAS/BASE, lenguaje propio de la plataforma SAS.
Introducción SAS Base Introducción a SAS/BASE, lenguaje propio de la plataforma SAS.

2 Indice 01 INTRODUCCIÓN 01.1 Inicio de Sesión
02 PROCEDIMIENTOS Y PASO DATA 02.1 Lectura datos internos 02.2 Lectura datos externos 03 LIBRERIAS 03.1 Definición 04 PASO DATA 04.1 Instrucciones set del paso data 04.2 Operaciones ‘dataset’ 04.2 Condiciones

3 Indice 05 VARIABLES 05.2 Formatos 05.3 Labels 05.4 Length
05.1 Selección de variables 05.2 Formatos 05.3 Labels 05.4 Length 06 FUNCIONES SAS 06.1 Funciones numéricas 06.2 funciones fecha 06.3 Funciones alfanuméricas

4 Indice 07 PROCEMIENTOS 07.1 Sintaxis 07.2 Procedimientos frecuentes
08 PROC SQL 08.1 Sintaxis 08.2 Joins 09 CONEXIONES A BBDD 09.1 Librerías 09.2 Ejemplo: Oracle, SQL Server, DB2, Teradata

5 Indice 10 MACROS 10.1 Introducción 10.2 Variables de macro
10.3 Generación de código 10.4 Macros con parámetros de entrada 11 COMPRESION DE TABLAS 11.1 CPORT 11.2 CIMPORT 12 PROCEDMIENTOS ESTADISTICOS 12.1 PROC univariate 12.2 PROC Freq

6 Indice 01 INTRODUCCIÓN 01.1 Inicio de Sesión
02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

7 Introducción / Inicio de sesión
SAS/BASE es el lenguaje propio de programación propio de la plataforma SAS. Lenguaje de programación de la cuarta generación flexible y extensible diseñado para acceso de datos, transformación y reporting.

8 Introducción / Inicio de sesión
Ventana LOG Barra Menú “Explorer” Ventana Editor Status line Ventana Output

9 Introducción / Inicio de sesión
Ventana “Explorer”: Contiene accesos directos a ficheros, librerías, y una ventana de resultados. Ventana ” EDITOR”: Ventana editable para el desarrollo del lenguaje SAS base. Ventana ”LOG”: Ventana para la visualización de los logs, escribe mensajes de advertencia o/y error, e informa sobre la velocidad de ejecución. Ventana ”OUTPUT”: Ventana de resultados.

10 Indice 02 PROCEDIMIENTOS Y PASO DATA 01 INTRODUCCIÓN
02.1 Lectura datos internos 02.2 Lectura datos externos 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

11 Procedimientos y Paso Data
Sintaxis : Data Nombre. Creación/Modificación de ‘dataset’. Dataset : Conjunto de datos creados con SAS. Operaciones dentro de un dataset ( lectura, creación de variables, cambio de etiquetas.. ) se realiza dentro de la instrucción DATA. Sintaxis : PROC. Acceso a ‘dataset’ sin modificar su estructura: Análisis, listados, cálculos estadísticos... Para especificar un dataset especifico se utilizaremos la opción ‘DATA=nombre_dataset’. Si no se especifica esta opción utilizará el ‘dataset’ creado más reciente. Cada instrucción es necesario el signo “;”. Los comentarios van precedidos por un signo “*”. Todo paso DATA o PROC debe acabar con la sentencia “RUN”;.

12 Indice 02 PROCEDIMIENTOS Y PASO DATA 01 INTRODUCCIÓN
02.1 Lectura datos internos 02.2 Lectura datos externos 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

13 Procedimientos y Paso Data / Lectura datos internos
* Datos correspondientes aun estudio sobre niños superdotados; * Se les realizaron dos test; DATA EJEMPLO1; INPUT NUM_NIN SUP INIC $ SEXO EDAD; CARDS; 4 1 JPY 1 56 5 2 JTA 1 48 6 4 RMA 0 88 7 2 HFB 0 28 ; RUN; PROC PRINT; INPUT : Declaración de variables, nombre de las variables y ‘$’ si son alfanuméricas CARDS : Lectura de los datos internos PROC PRINT : Procedimiento para listar los datos , el resultado de este procedimiento se visualiza en la ventana de output.

14 Indice 02 PROCEDIMIENTOS Y PASO DATA 01 INTRODUCCIÓN
02.1 Lectura datos internos 02.2 Lectura datos externos 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

15 Procedimientos y Paso Data / Lectura datos externos
INFILE: Lectura de archivos externos, especificando la ruta del archivo. Opción: LRECL: máxima longitud de cada línea (necesaria si el registro tiene mas de 256 caracteres); Formas de lectura: Fichero formato fijo: Especifica las columnas. Ficheros con delimitador; (NO espacio en blanco) se define con la opicon DLM= ‘separador’. Ejemplo DLM=“|”. DATA EJEMPLO2; INFILE ‘C:\DATOS1.DAT’ LRECLS=9; INPUT NUM_NIN 1-2 INIC $ 4-6 SEXO 7 EDAD 8-9; RUN; PROC PRINT DATA=EJEMPLO2; DATA EJEMPLO3; INFILE ‘C:\DATOS2.DAT’ DLM=’09’x; INPUT NUM_NIN TEST; PROC PRINT DATA=EJEMPLO2;

16 Indice 03.1 Definición 03 LIBRERIAS 01 INTRODUCCIÓN
02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 03.1 Definición 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

17 Librerías Una librería es una carpeta donde se almacenan los archivos de SAS. Al crear la librería se accede a los datos, pero al suprimirla no se borran los datos sino el acceso. Tipos de Librería : Locales -> Carpetas dentro del PC Remotas-> Carpetas del servidor Temporales -> Librería WORK: se elimina todos los datos al finalizar la sesión Permanentes -> Datos permanentes al finalizar la sesión.

18 Indice 03.1 Definición 03 LIBRERIAS 01 INTRODUCCIÓN
02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 03.1 Definición 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

19 Librerías / Definición
Sintaxis: LIBANAME nombre_libreria ‘ruta (local o remota)’ Nombre Librería : Nombre de acceso a la librería. Ruta: Ruta dónde será ubicada ( local o remota). Ejemplo: Data prueba1; Run; Libname prueba ‘c:\prueba_dir’ DATA preuba.prueba2; LIbname : Declaración de librería Options: ACCESS=READONLY|TEMP COMPRESS=NO | YES | CHAR | BINARY CVPBYTES=bytes

20 Indice 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL
01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 04 PASO DATA 04.1 Instrucciones set del paso data 04.2 Operaciones ‘dataset’ 04.3 Condicional 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

21 Paso DATA / Instrucciones set del paso Data
Paso DATA :SET LIBNAME TEST 'D:\'; DATA TEST.EJEMPLO1; SET EJEMPLO1; RUN; DATA TEST.EJEMPLO2; SET EJEMPLO2; DATA TEST.EJEMPLO4; SET EJEMPLO3; OPTIONS LS=75 PS=50 NODATE NONUMBER; TITLE 'dataset TEST.EJEMPLO2'; FOOTNOTE 'dataset RESULTADOS'; PROC PRINT DATA=TEST.EJEMPLO2; TITLE; FOOTNOTE; Los datasets EJMEPLO1, EJMEPLO2 y EJMEPLO3 se encuentran en las librerías WORK y TEST,; guardados de forma temporal en la librería WORK y de forma permanente en la librería TEST TITLE : Titulo en la ventana OUTPUT FOOTNOTE : Pies de pagina en la ventana OUTPUT OPTIONS: LS : Numero de caracteres por linea PS: Numero de lineas por pagina NODATE : Elimina la cabecera por defecto NONUMBER: Elimina la numeración de las páginas.

22 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
04.1 Instrucciones set del paso data 04.2 Operaciones ‘dataset’ 04.3 Condicional 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

23 Paso DATA / Operaciones dataset
DATA B; SET A; RUN; La instrucción SET asigna al dataset del paso DATA los mismos datos, variables y propiedades que el dataset de la instrucción SET. Copia del dataset A llamado B. A y B son iguales Copia del dataset B llamado C. Y se añade la variable VARA con el valor 1. Siempre sea necesaria alguna modificación, operación, recodificación, ... en algún dataset se realiza mediante el paso DATA y la instrucción SET. DATA C; SET B; VARA=1; RUN; Copia en la librería WORK, el datasetAnt, el cual no se modifica en esta ejecución. LIBNAME nombreLib ‘d:\datos_sas’; DATA nombre1; SET nombreLib.datasetAnt; RUN;

24 Paso DATA / Operaciones dataset
DATA AUXILIAR; SET TEST.EJEMPLO1; FILE 'A:\DATOS1.DAT' ; PUT NUM_NIN 1-2 SUP 3 INIC $ 4-6 SEXO 7 EDAD 8-9; RUN; Guardar datos en un fichero externo FILE :Exportar los datos de un dataset a la ruta y formato deseados, pero sólo ficheros texto. PUT :Posiciones de cada variable Ordenar datos en un dataset: El procedimiento SORT se ordena el dataset según las variables especificadas en la instrucción BY. PROC SORT DATA=TEST.EJEMPLO1; BY NUM_NIN; RUN; PROC SORT DATA=TEST.EJEMPLO2; BY NUM_NIN; RUN; PROC SORT DATA=TEST. EJEMPLO3; DATA TEST. EJEMPLO4; MERGE TEST.EJEMPLO3 TEST.EJEMPLO2; PROC PRINT; Merge de datasets: La sentencia MERGE sirve para "cruzar" n tablas dando como resultado m resultados de salida de datos. Es imprescindible que las tablas de entrada estén ordenadas por las variables de cruces. Debe llevar una sentencia BY con las variables de cruce. En el cuerpo del merge se permite cualquier sentencia SAS valida en dataset.

25 Paso DATA / Operaciones dataset
DATA TEST.EJEMPLO5; SET EJEMPLO.EJEMPLO4; RUN; PROC APPEND BASE=TEST.EJEMPLO5 DATA=TEST.EJEMPLO1 FORCE; PROC PRINT; Añadir casos: PROC APPEND :El dataset resultante es el dataset especificado en la opción BASE, y a éste se le añaden todos los casos del dataset de la opción DATA. Cuando ambos datasets no tienen idéntica estructura se requiere la opción FORCE al final de la instrucción.

26 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
04.1 Instrucciones set del paso data 04.2 Operaciones ‘dataset’ 04.2 Condicional 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

27 Paso DATA / Condidiciones
Paso DATA : Condicional DATA RESULTADO7; SET TEST.RESULTADO8; CENTRE=10; IF EDAD < 50 THEN EDAD2=1; ELSE EDAD2=2; IF NUM_NIN=5 THEN DO; INIC='ABC'; SEXO=1; END; RUN; PROC PRINT; Sentencia condicional: Se pueden seleccionar casos datos que cumplan cierta condición, a partir de la instrucción IF o equivalentemente la instrucción WHERE: Sintaxis: a) IF condicion THEN accion; ELSE accion; b) IF condicion THEN DO; accion1; acccion2; END;

28 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 05.1 Selección de variables 05.2 Formatos 05.3 Labels 05.4 Length 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

29 VARIABLES / Selección de variables
Paso DATA : keep y drop DATA AUXILIAR2 (KEEP= TEST RESULTADO); SET TEST.PRUFINALES; RUN; KEEP: La instrucción KEEP permite guardar en el dataset creado sólo las variables allí mencionadas. Las demás variables son eliminadas del dataset resultante. DATA AUXILIAR3 (DROP= TEST RESULTADO); SET TEST.PRUFINALES; RUN; DROP: La instrucción DROP permite ELIMINAR del dataset las variables allí mencionadas. Las demás variables continúan en el dataset resultante.

30 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 05.1 Selección de variables 05.2 Formatos 05.3 Labels 05.4 Length 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

31 VARIABLES / Formatos Paso DATA : Format y Proc Format
DATA AUXILIAR4 SET TEST.PRUEFINALES; FORMAT EDAD 2. NOMBRE $40. RUN; FORMAT: Formato de las variables. Sintaxis: FORMAT nombre_var ($ si es alfanumerica) logitud +’.’ ( Todos los formatos acaban en .) PROC FORMAT ; VALUE VSI_NO 1=‘SI’ O=‘NO’; RUN; DATA AUXILIAR5 SET TEST.PRUFINALES; FORMAT APROBADO VSI_NO. EDAD 2.; PROC FORMAT. Permite utilizar formatos internos de SAS o crear formatos a medida mediante PROC FORMAT.

32 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 05.1 Selección de variables 05.2 Formatos 05.3 Labels 05.4 Length 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

33 VARIABLES / LABELS Paso DATA : LABEL
DATA AUXILIAR5; SET TEST.PRUFINALES; LABEL RSPFINAL =‘ RESULTADO PRUEBA FINAL’ RUN; LABEL: Permite establecer etiquetas a las variables para su mejorar su comprensión.

34 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 05.1 Selección de variables 05.2 Formatos 05.3 Labels 05.4 Length 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

35 VARIABLES / LENGTH Paso DATA : LENGTH
DATA AUXILIAR6; SET TEST.PRUEBASFINALES; LENGTH EDAD 2 NOMBRE $ 50; RUN; LENGTH: Permite establecer la longitud de los campos. Sintaxis: Length nom_var longitud; Nota ( Si es alfanumerica ira precedida de un $.

36 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 06.1 Funciones numéricas 06.2 funciones fecha 06.3 Funciones alfanuméricas 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

37 FUNCIONES SAS / FUNCIONES NUMÉRICAS
ABS(EXPRESIÓN) SQRT(EXPRESIÓN) ROUND(EXPRESIÓN) ROUND(EXPRESIÓN, PRECISIÓN) EXP(EXPRESIÓN) LOG(EXPRESIÓN) LOG2(EXPRESIÓN) LOG10(EXPRESIÓN) COS(EXPRESIÓN) SIN(EXPRESIÓN) TAN(EXPRESIÓN) Valor Absoluto Raíz Cuadrada Redondear Redondear con determinada precisión (la precisión es una potencia de 10 Exponencial Logaritmo Logaritmo con base 2 Logaritmo con base 10 Coseno Seno Tangente

38 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 06.1 Funciones numéricas 06.2 Funciones fecha 06.3 Funciones alfanuméricas 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

39 FUNCIONES SAS / FUNCIONES FECHA
MDY (MES,DIA,AÑO) DAY(VAR_FECHA) MONTH (VAR_FECHA) YEAR (VAR_FECHA) DATEPART (EXPRESIÓN) DHMS (FECHA,HOR, MIN,SEG) INTCK(UNIDAD, FEC1,FEC2) Formato fecha mes día año Retorna el día de una variable tipo fecha Retorna el mes de una variable tipo fecha Retorna el año de una variable tipo fecha Retorna la parte de la fecha de una variable de tipo fecha_hora Convierte a variable tipo fecha Obtiene la distancia entre dos fechas en la unidad especificada

40 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 06.1 Funciones numéricas 06.2 Funciones fecha 06.3 Funciones alfanuméricas 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

41 FUNCIONES SAS / FUNCIONES ALAFANUMERICAS
INDEX COMPRESS LOWCASE UPCASE LENGTH LEFT REVERSE SCAN SOUNDEX SPEDIS SUBSTR TRANSLATE Busca una expresión de caracteres dentro de una cadena Elimina caracteres específicos de una cadena. Convierte todas las letras del argumento a minúsculas Convierte todas las letras del argumento a mayúsculas Retorna la longitud del argumento Alinea a la izquierda una expresión de caracteres Da la vuelta a una cadena Selecciona una palabra en particular de una expresión de caracteres Codifica una cadena a sonidos para facilitar comparaciones Determina la similitud entre dos palabras expresada cómo una distancia Extraes una subcadena de un argumento Reemplaza caracteres específicos de un argumento

42 Indice 07.2 Procedimientos frecuentes 01 INTRODUCCIÓN
02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 07.1 Sintaxis 07.2 Procedimientos frecuentes 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS PROC SQL 12 PROCEDMIENTOS ESTADISTICOS

43 PROCEDIMIENTOS / SINTAXIS
PROC NOM_PRC DATA = nom_dataset OPCIONES ESPECIFICAS; WHERE CONDICIÓN; BY VARIABLES; WEIGHT VARIABLE_PESO; OUTPUT OUT=dataset_salida; RUN; Procedimientos: DATA=nombre_dataset Esta opción permite especificar cuál es el dataset de trabajo. Las instrucciones específicas de cada procedimiento son un requisito indispensable para el funcionamiento del mismo, y suelen estar relacionadas con las variables que se analizan. La instrucción WHERE permite estudiar sólo los datos del dataset que cumplen una cierta condición. La instrucción BY se utiliza para partir los datos del dataset en diferentes grupos según los valores que toma la variable allí mencionada. La instrucción OUTPUT OUT=dataset_salida es una opción muy útil que permite guardar los estadísticos calculados por el procedimiento en un dataset que se llama dataset_salida. Para cualquier duda en la sintaxis de un procedimiento, consultar el HELP.

44 Indice 07.2 Procedimientos frecuentes 01 INTRODUCCIÓN
02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 07.1 Sintaxis 07.2 Procedimientos frecuentes 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

45 PROCEDIMIENTOS / PROCEDIMIENTES FRECUENTES
Procedimientos SAS APPEND CALENDAR CATALOG CHART CIMPORT COMPARE CONTENTS COPY CORR CPORT DATASETS DBCSTAB DISPLAY EXPLODE EXPORT FORMAT FORMS FREQ Procedure Añadir datos a un dataset Procedure Calendario con fechas y citas Procedure Manipula los catálogos de SAS Procedure Gráficos de barras sencillos Procedure Importación de datos de otras versiones de SAS Procedure Camparación de Bases de datos Procedure Contenidos de un dataset Procedure Realiza copias de un dataset Procedure Correlación entre variables Procedure Exportación de datos de otras versiones de SAS Procedure Manipulación de datasets (eliminar). Procedure Produce tablas de conversión a caracteres de doble-byte. Procedure Visualizar titulos Procedure Titulos grandes, vía explotar caracteres. Procedure Exportar datasets a texto (p. ej.) Procedure Dar etiquetas a los valores de las variables Procedure Para crear etiquetas adesivas Procedure Tablas de frecuencias

46 PROCEDIMIENTOS / PROCEDIMIENTES FRECUENTES
Procedimientos SAS FSLIST IMPORT MEANS OPTIONS PLOT PMENU PRINT PRINTTO RANK REGISTRY REPORT SORT SQL STANDARD SUMMARY TABULATE TIMEPLOT TRANSPOSE TRANTAB UNIVARIATE Procedure Examinar ficheros externos al SAS Procedure Importar datos (p. ej. en formato texto) Procedure Resumir los datos Procedure Opciones de la ventana OUTPUT Procedure Diagramas de dispersión sencillos Procedure Prepara Menus para ser utilizados por otros módulos de SAS (AF, FSP) Procedure Listar datasets Procedure Defini las rutas dónde almacenar las ventanas LOG y OUTPUT Procedure Crea Rangos a partir de variables. Procedure Mantiene el registro de SAS. Procedure Para realizar informes Procedure Ordenar un dataset Procedure Consultas a datasets mediante instrucciones SQL Procedure Produce variables estandarizadas Procedure Estadísticos de Resumen Procedure Tablas Procedure Diagramas de dispersión respecto el tiempo Procedure Transpone datasets Procedure Produce y mantiene tablas de traducción de códigos Procedure Análisis univariados

47 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 08.1 Sintaxis 08.2 Joins 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

48 PROC SQL / SINTAXIS PROC SQL Sintaxis: PROC SQL; QUIT; PROC SQL
Query-Expresion ; QUIT; PROC SQL El procedimiento PROC SQL utiliza el Lenguaje Estructurado Query (SQL) para: - recobrar y manipular conjuntos de datos SAS - crear y borrar conjuntos de datos - generar informes - añadir y modificar valores de datos en conjunto de datos - añadir, modificar o borrar columnas en un conjunto de datos Query-expression contiene sentencias SQL.

49 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 08.1 Sintaxis 08.2 Joins 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

50 PROC SQL / JOINS PROC SQL: Join
PROC SQL; CREATE TABLE FIEBRE.FINAL AS SELECT * FROM lefttab as l, righttab as r WHEREl.continent=r.continent; QUIT; Ó SELECT * FROM lefttab as l inner join righttab as ron (l.continent=r.continent); Inner Join: La tabla resultante contendrá únicamente los registros que sean comunes en ambas tablas. Outer Join Left outer join: La tabla resultante contendrá los registros comunes en ambas tablas más los de la primera tabla que no se han cruzado con ninguna fila de la segunda tabla. Right outer join:La tabla resultante contendrá los registros comunes en ambas tablas más los de la segunda tabla que no se han cruzado con ninguna fila de la primera tabla. Full outer join : La tabla resultante contendrá los registros comunes en ambas tablas más las filas de cada una de las tablas que no se han cruzado con ninguna de la otra. Left : PROC SQL; CREATE TABLE FIEBRE.FINAL AS SELECT * FROM lefttab as l left join righttab as ron (l.continent=r.continent); QUIT; Right SELECT * FROM lefttab as l right join righttab as r on (l.continent=r.continent); Full SELECT *FROM lefttab as l full join righttab as r

51 Indice 09.1 Librerías 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 09.1 Librerías 09.2 Ejemplo: Oracle, SQL Server, DB2, Teradata 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

52 CONEXIONES A BBDD / LIBRERIAS
Sintaxis: Libname libref engine-name <SAS/ACCESS-connectionn-opt> <SAS/ACCESS-LIBNAME-opts> Libname -> Sentencia para la declaración de librerías Libref -> Nombre de la conexión definida para el acceso a base de datos. Alias de conexión. Engine-name .> Nombre del motor de SAS /ACCESS definido para las diferentes conexiona a BBDD SAS/ACCESS-connectionn-opt-> Opciones para la conexión a la base de datos, por ejemplo usuario, password, ... SAS/ACCESS-LIBNAME-opts -> Opciones para la librería declarada.

53 Indice 09.1 Librerías 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 09.1 Librerías 09.2 Ejemplo: Oracle, SQL Server, DB2, Teradata 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

54 CONEXIONES A BBDD / LIBRERIAS
Conexiones a BBDD : Ejemplos de conexiones SQL SERVER: libname sqlS odbc dsn=ORINGENDATOS user=xxxxx password=xxxxx schema=xxxxx; SQL SERVER: Es necesario crear un origen de datos desde la opción de windows de ‘Administración de Dispositivos’. DB2 libname DB2UDB db2 database=XXXXX user=xxxxx password=xxxxx; DB2: Es necesario tener catalogadas las bases de datos en el cliente DB2 para realizar la conexión. ORACLE libname Oracle oracle user=“xxxxxxx" password=“xxxxxxxx" path=“xxxx" schema=‘xxxxx'; Oracle: Es necesario catalogar la base de datos en el TNS_Names.ora para realizar la conexión a la base de datos. Teradata: Es necesario tener catalogadas las bases de datos en el cliente Teradata para realizar la conexión. TERADATA libname terasas teradata database='ddbb' user='user' pw='pass';

55 Indice 10.1 Variables de macro 01 INTRODUCCIÓN
02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 10.1 Introducción 10.1 Variables de macro 10.2 Generación de código 10.3 Macros con parámetros de entrada 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

56 Macros / Introducción La programación Macro es una herramienta muy útil para estandarizar, extendery la programación clásica en código SAS. Entre otras virtudes, permite reducir en gran medida la cantidad de código necesario para las tareas más frecuentes. La ventana de programación para crear Macros, es la ventana habitual de sintaxis. La programación Macro tiene dos componentes principales: - El procesador Macro, encargado de “traducir”. - El lenguaje Macro, la sintaxis que se debe utilizar ara comunicarse con el procesador Macro. Al compilar un texto, existen dos caracteres que activan al procesador Macro: - & : &nombre , que designará a las variables Macro. - % : %nombre , que designará a las Macros creadas por nosotros o ya residentes en el sistema.

57 Indice 10.2 Variables de macro 01 INTRODUCCIÓN
02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 10.1 Introducción 10.2 Variables de macro 10.3 Generación de código 10.4 Macros con parámetros de entrada 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

58 MACROS / VARIABLES MACROS
Sintaxis: libname : % let nombre = literal_nombre ; Formula: %let num=%eval (5*2); -> uso en formulas Variables Macro: La instrucción %let permite asignar a un nombre un conjunto de caracteres. Las referencias a variables Macro ya creadas siempre serán precedidas por el símbolo: “&”.Los nombres de variables Macro no pueden contener caracteres extraños cómo:; , espacio “ ‘ AND OR etc. Variables definidas por el sistema: sysdate Sysday Syslast syserr %let macr=%nrtsr(%pl); ( se asigna a macr el litera pl) %let plo = %str(proc print ; run;); Variables definidas por el sistema: Lista do de variables definidas por el sistema Se recomienda que empiece por letra o ‘_’. Para listar todas las variables %put_all_;

59 Indice 10.1 Introducción 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS 04 PASO DATA 05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 10.1 Introducción 10.2 Variables de macro 10.3 Generación de código 10.4 Macros con parámetros de entrada 11 COMPRESION DE TABLAS PROC SQL 12 PROCEDMIENTOS ESTADISTICOS

60 MACROS / GENERACION DE CODIGO MACROS
Macros : Código condicionales y repetitivas Sintaxis: % macro nombre macro; expresion % mend nombre macro Estructura general de una macro: Se puede introducir código SAS ( pasos data, procedimientos, funciones..). Para invocar una macro es necesario el prefijo % Para introducir comentarios se utiliza %* Condiciones % macro EJEMPLO1(info=); % if &info=a then %do; proc sort; data=prueba run; % else %if &info=b %then %do; proc print noobs label; % else %put “Resultado” &INFO %mend; Condiciones : Instrucción condicional: %IF ... %THEN..; %ELSE... ; Y son mas de una instrucion en los bloques then o else se utiliza %DO; .. %END; Instrucción Repetitivas: (Ejemplo) %do i=1:%to &num; %put &num “Resultado”; %end;

61 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 10.1 Introducción 10.2 Variables de macro 10.3 Generación de código 10.4 Macros con parámetros de entrada 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS

62 MACROS / PARAMETROS DE ENTRADA
Macros : Parámetros de entrada en las macros. Ejemplo: % macro pl( data=,yvar=,xvar=);; proc plot data = &data; run; % mend; LLamada: %pl (data=a,yvar>=y=xvar=x); Definición de los parámetros de entrada: Definición Llamada %macro pl(data=,yvar=,xvar=); %pl(data0a,yvar=u;xvar=x); %macro pl(data,yvar,xvar); %pl(a,y,x); %macro pl(data=a,yvar=y,xvar=x); %pl(xvar=x);

63 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 11.1 CPORT 11.1 CIMPORT 12 PROCEDMIENTOS ESTADISTICOS

64 COMPRESION DE TABLAS / CPORT
Compresión de tablas : CPORT Sintaxis: Libname nom_lib ‘directorio_lib'; proc cport lib=nomb_lib file=‘nombre-result.cpo';run; CPORT: El procedimiento para la compresión de los datos de una librería en un archivo cpo. Se puede utilizar para comprimir tablas en un entorno Windows y exportarlas a un entorno Unix

65 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 11.1 CPORT 11.2 CIMPORT 12 PROCEDMIENTOS ESTADISTICOS

66 COMPRESION DE TABLAS / CIMPORT
Compresión de tablas : CIMPORT Sintaxis: libname nom_lib ‘ruta_lib'; proc cimport infile=‘ruta_archivo\nombre_archivo_comp.cpo' library=nomb_lib; run; CIMPORT: El procedimiento para la descompresión de los datos de archivo cpo a una librería. Se puede utilizar para comprimir tablas en un entorno Windows y exportarlas a un entorno Unix

67 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS 12.1 PROC univariate 12.2 PROC Freq

68 PROCEDMIENTOS ESTADISTICOS / PROC UNIVARIATE
Procedimientos estadísticos : Proc Univariate Sintaxis: PROC UNIVARIATE DATA=FIEBRE.GRADOS; VAR EDAD; OUTPUT OUT=U_EDAD MEAN=MITJANA MEDIAN=MEDIANA MODE=MODA; RUN; PROC UNIVARIATE DATA=FIEBRE.GRADOS PLOT NORMAL; PROC PRINT DATA=U_EDAD; Proc Univariate: El procedimiento PROC UNIVARIATE se utiliza para cuando el objetivo del análisis es por ejemplo testar una hipótesis o bien cualquier otro análisis más profundo de los datos, es interesante explorar más detalladamente las variables y obtener otros estadísticos descriptivos así como tests relativos a la distribución de los datos.

69 Indice 01 INTRODUCCIÓN 02 PROCEDIMIENTOS Y PASO DATA 03 LIBRERIAS
05 VARIABLES 06 FUNCIONES SAS 07 PROCEMIENTOS 08 PROC SQL 09 CONEXIONES A BBDD 10 MACROS 11 COMPRESION DE TABLAS 12 PROCEDMIENTOS ESTADISTICOS 12.1 PROC univariate 12.2 PROC Freq

70 PROCEDMIENTOS ESTADISTICOS / PROC FREQ
Procedimientos estadísticos : Proc Freq Sintaxis: PROC FREQ DATA=FIEBRE.GRADOS; TABLES SEXO /OUT=F_SEXO; RUN; TABLES SEXO /TESTP=( ); Proc Freq: El procedimiento FREQ genera tablas de frecuencias. Este procedimiento, también puede ser útil para observar la calidad de los datos, comprobando si hay valores extraños o faltantes.


Descargar ppt "Introducción a SAS/BASE, lenguaje propio de la plataforma SAS."

Presentaciones similares


Anuncios Google