Vous êtes sur la page 1sur 70

Introduccin

SAS Base
Introduccin a SAS/BASE,
lenguaje propio de la
plataforma SAS.
http:\\sasybi.blogspot.com

Indice
01 INTRODUCCIN
01.1 Inicio de Sesin

02 PROCEDIMIENTOS Y PASO DATA


02.1 Lectura datos internos
02.2 Lectura datos externos

03 LIBRERIAS
03.1 Definicin

04 PASO DATA
04.1 Instrucciones set del paso data
04.2 Operaciones dataset
04.2 Condiciones

Indice
05 VARIABLES
05.1 Seleccin de variables
05.2 Formatos
05.3 Labels
05.4 Length
06 FUNCIONES SAS
06.1 Funciones numricas
06.2 funciones fecha
06.3 Funciones alfanumricas

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 Libreras
09.2 Ejemplo: Oracle, SQL Server, DB2, Teradata

Indice
10 MACROS
10.1 Introduccin
10.2 Variables de macro
10.3 Generacin de cdigo
10.4 Macros con parmetros de entrada
11 COMPRESION DE TABLAS
11.1 CPORT
11.2 CIMPORT
12 PROCEDMIENTOS ESTADISTICOS
12.1 PROC univariate
12.2 PROC Freq

Indice
01 INTRODUCCIN
01.1 Inicio de Sesin
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

Introduccin / Inicio de
sesin
SAS/BASE es el lenguaje propio de
programacin propio de la plataforma
SAS.
Lenguaje de programacin de la cuarta
generacin flexible y extensible
diseado para acceso de datos,
transformacin y reporting.

Introduccin / Inicio de
sesin
Barra
Men

Ventana
LOG

Explorer
Ventana Editor

Ventana
Output

Status line

Introduccin / Inicio de
sesin
Ventana Explorer: Contiene accesos
directos a ficheros, libreras, y una ventana de
resultados.
Ventana EDITOR: Ventana editable para el
desarrollo del lenguaje SAS base.
Ventana LOG: Ventana para la visualizacin
de los logs, escribe mensajes de advertencia
o/y error, e informa sobre la velocidad de
ejecucin.
Ventana OUTPUT: Ventana de resultados.

Indice
01 INTRODUCCIN

02 PROCEDIMIENTOS Y PASO DATA


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

Procedimientos y Paso Data


PASO DATA

PROC

Sintaxis : Data Nombre.

Sintaxis : PROC.

Creacin/Modificacin de dataset.

Acceso a dataset sin modificar su estructura:


Anlisis, listados, clculos estadsticos...

Dataset : Conjunto de datos creados con SAS.


Operaciones dentro de un dataset ( lectura,
creacin de variables, cambio de etiquetas.. ) se
realiza dentro de la instruccin DATA.

Para especificar un dataset especifico se


utilizaremos la opcin DATA=nombre_dataset.
Si no se especifica esta opcin utilizar el
dataset creado ms reciente.

Cada instruccin es necesario el signo ;.


Los comentarios van precedidos por un signo *.
Todo paso DATA o PROC debe acabar con la sentencia RUN;.

Indice
01 INTRODUCCIN

02 PROCEDIMIENTOS Y PASO DATA


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

Procedimientos y Paso Data /


Lectura datos internos
Paso Data
* Datos correspondientes aun estudio sobre nios superdotados;

INPUT : Declaracin de variables, nombre de las

* Se les realizaron dos test;

variables y $ si son alfanumricas

CARDS : Lectura de los datos internos


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;
RUN;

PROC PRINT : Procedimiento para listar los datos ,


el resultado de este procedimiento se visualiza en la
ventana de output.

Indice
01 INTRODUCCIN

02 PROCEDIMIENTOS Y PASO DATA


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

Procedimientos y Paso Data /


Lectura datos externos
Paso Data
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;
RUN;
DATA EJEMPLO3;
INFILE C:\DATOS2.DAT DLM=09x;
INPUT NUM_NIN TEST;
RUN;
PROC PRINT DATA=EJEMPLO2;
RUN;

INFILE: Lectura de archivos externos, especificando


la ruta del archivo.
Opcin: LRECL: mxima longitud de cada lnea
(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=|.

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA

03 LIBRERIAS

03.1 Definicin
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

Libreras
Una librera es una carpeta donde se almacenan los
archivos de SAS.
Al crear la librera se accede a los datos, pero al
suprimirla no se borran los datos sino el acceso.
Tipos de Librera :
Locales -> Carpetas dentro del PC
Remotas-> Carpetas del servidor
Temporales -> Librera WORK: se elimina todos los
datos al finalizar la sesin
Permanentes -> Datos permanentes al finalizar la
sesin.

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA

03 LIBRERIAS
03.1 Definicin
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

Libreras / Definicin
Libreras
Sintaxis:
LIBANAME nombre_libreria ruta (local o remota)

Nombre Librera : Nombre de acceso a la librera.


Ruta: Ruta dnde ser ubicada ( local o remota).

Ejemplo:
Data prueba1;
Run;
Libname prueba c:\prueba_dir
DATA preuba.prueba2;
Run;

LIbname : Declaracin de librera


Options:
ACCESS=READONLY|TEMP
COMPRESS=NO | YES | CHAR |
BINARY
CVPBYTES=bytes

Indice
01 INTRODUCCIN
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

Paso DATA / Instrucciones set


del paso Data
Paso DATA :SET
LIBNAME TEST 'D:\';
DATA TEST.EJEMPLO1;
SET EJEMPLO1;
RUN;
DATA TEST.EJEMPLO2;
SET EJEMPLO2;
RUN;
DATA TEST.EJEMPLO4;
SET EJEMPLO3;
RUN;
OPTIONS LS=75 PS=50 NODATE NONUMBER;
TITLE 'dataset TEST.EJEMPLO2';
FOOTNOTE 'dataset RESULTADOS';
PROC PRINT DATA=TEST.EJEMPLO2;
RUN;
TITLE;
FOOTNOTE;

Los datasets EJMEPLO1, EJMEPLO2 y EJMEPLO3 se


encuentran en las libreras WORK y TEST,; guardados de forma
temporal en la librera WORK y de forma permanente en la librera
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 numeracin de las pginas.

Indice
01 INTRODUCCIN
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

Paso DATA / Operaciones


dataset
Paso DATA : Operaciones
DATA B;
SET A;
RUN;

DATA C;
SET B;
VARA=1;
RUN;

LIBNAME nombreLib d:\datos_sas;


DATA nombre1;
SET nombreLib.datasetAnt;
RUN;

La instruccin SET asigna al dataset del paso DATA los mismos


datos, variables y propiedades que el dataset de la instruccin SET.
Copia del dataset A llamado B. A y B son iguales
Copia del dataset B llamado C. Y se aade la variable VARA con el
valor 1. Siempre sea necesaria alguna modificacin, operacin,
recodificacin, ... en algn dataset se realiza mediante el paso DATA
y la instruccin SET.
Copia en la librera WORK, el datasetAnt, el cual no se modifica en
esta ejecucin.

Paso DATA / Operaciones


dataset
Paso DATA : Operaciones
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;
PROC SORT DATA=TEST.EJEMPLO1;
BY NUM_NIN;
RUN;
PROC SORT DATA=TEST.EJEMPLO2;
BY NUM_NIN;
RUN;
PROC SORT DATA=TEST. EJEMPLO3;
BY NUM_NIN;
RUN;
DATA TEST. EJEMPLO4;
MERGE TEST.EJEMPLO3 TEST.EJEMPLO2;
BY NUM_NIN;
RUN;
PROC PRINT;
RUN;

Guardar datos en un fichero externo


FILE :Exportar los datos de un dataset a la ruta y formato
deseados, pero slo ficheros texto.
PUT :Posiciones de cada variable

Ordenar datos en un dataset:


El procedimiento SORT se ordena el dataset segn las variables
especificadas en la instruccin BY.

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 estn 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.

Paso DATA / Operaciones


dataset
Paso DATA : Operaciones
DATA TEST.EJEMPLO5;
SET EJEMPLO.EJEMPLO4;
RUN;
PROC APPEND BASE=TEST.EJEMPLO5 DATA=TEST.EJEMPLO1 FORCE;
RUN;
PROC PRINT;
RUN;

Aadir casos:
PROC APPEND :El dataset resultante es el dataset
especificado en
la opcin BASE, y a ste se le
aaden todos los casos del dataset de
la opcin DATA. Cuando ambos datasets no tienen idntica
estructura se requiere la opcin FORCE al final de la
instruccin.

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
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

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;
RUN;

Sentencia condicional:
Se pueden seleccionar casos datos que cumplan cierta
condicin, a partir de la instruccin IF o equivalentemente
la instruccin WHERE:
Sintaxis:
a) IF condicion THEN accion;
ELSE accion;
b) IF condicion THEN DO;
accion1;
acccion2;
END;

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
05 VARIABLES
05.1 Seleccin 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

VARIABLES / Seleccin de
variables
Paso DATA : keep y drop
DATA AUXILIAR2 (KEEP= TEST RESULTADO);
SET TEST.PRUFINALES;
RUN;

KEEP: La instruccin KEEP permite guardar en el dataset creado


slo las variables all mencionadas. Las dems variables son
eliminadas del dataset resultante.

DATA AUXILIAR3 (DROP= TEST RESULTADO);


SET TEST.PRUFINALES;
RUN;

DROP: La instruccin DROP permite ELIMINAR del dataset las


variables all mencionadas. Las dems variables continan en el
dataset resultante.

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
05 VARIABLES
05.1 Seleccin 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

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;

PROC FORMAT. Permite utilizar formatos internos de SAS o crear


formatos a medida mediante PROC FORMAT.

DATA AUXILIAR5
SET TEST.PRUFINALES;
FORMAT APROBADO VSI_NO. EDAD 2.;
RUN;

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
05 VARIABLES
05.1 Seleccin 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

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 comprensin.

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
05 VARIABLES
05.1 Seleccin 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

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 $.

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
05 VARIABLES
06 FUNCIONES SAS
06.1 Funciones numricas
06.2 funciones fecha
06.3 Funciones alfanumricas
07 PROCEMIENTOS
08 PROC SQL
09 CONEXIONES A BBDD
10 MACROS
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

FUNCIONES SAS / FUNCIONES


NUMRICAS
Funciones SAS
ABS(EXPRESIN)

Valor Absoluto

SQRT(EXPRESIN)

Raz Cuadrada

ROUND(EXPRESIN)

Redondear

ROUND(EXPRESIN, PRECISIN)

Redondear con determinada precisin (la precisin es una potencia de 10

EXP(EXPRESIN)

Exponencial

LOG(EXPRESIN)

Logaritmo

LOG2(EXPRESIN)

Logaritmo con base 2

LOG10(EXPRESIN)

Logaritmo con base 10

COS(EXPRESIN)

Coseno

SIN(EXPRESIN)

Seno

TAN(EXPRESIN)

Tangente

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
05 VARIABLES
06 FUNCIONES SAS
06.1 Funciones numricas
06.2 Funciones fecha
06.3 Funciones alfanumricas
07 PROCEMIENTOS
08 PROC SQL
09 CONEXIONES A BBDD
10 MACROS
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

FUNCIONES SAS / FUNCIONES


FECHA
Funciones SAS
MDY (MES,DIA,AO)

Formato fecha mes da ao

DAY(VAR_FECHA)

Retorna el da de una variable tipo fecha

MONTH (VAR_FECHA)

Retorna el mes de una variable tipo fecha

YEAR (VAR_FECHA)

Retorna el ao de una variable tipo fecha

DATEPART (EXPRESIN)

Retorna la parte de la fecha de una variable de tipo fecha_hora

DHMS (FECHA,HOR, MIN,SEG)

Convierte a variable tipo fecha

INTCK(UNIDAD, FEC1,FEC2)

Obtiene la distancia entre dos fechas en la unidad especificada

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
05 VARIABLES
06 FUNCIONES SAS
06.1 Funciones numricas
06.2 Funciones fecha
06.3 Funciones alfanumricas
07 PROCEMIENTOS
08 PROC SQL
09 CONEXIONES A BBDD
10 MACROS
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

FUNCIONES SAS /
FUNCIONES
ALAFANUMERICAS
Funciones SAS
INDEX

COMPRESS
LOWCASE
UPCASE

LENGTH

LEFT

REVERSE

SCAN

SOUNDEX

Busca una expresin de caracteres dentro de una cadena

Elimina caracteres especficos de una cadena.

Convierte todas las letras del argumento a minsculas

Convierte todas las letras del argumento a maysculas

Retorna la longitud del argumento

Alinea a la izquierda una expresin de caracteres

Da la vuelta a una cadena

Selecciona una palabra en particular de una expresin de caracteres


Codifica una cadena a sonidos para facilitar comparaciones

SPEDIS

SUBSTR

Determina la similitud entre dos palabras expresada cmo una distancia

TRANSLATE

Reemplaza caracteres especficos de un argumento

Extraes una subcadena de un argumento

Indice
01 INTRODUCCIN
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

PROCEDIMIENTOS /
SINTAXIS
Procedimientos
Sintaxis:
PROC NOM_PRC DATA = nom_dataset OPCIONES
ESPECIFICAS;

WHERE CONDICIN;
BY VARIABLES;
WEIGHT VARIABLE_PESO;
OUTPUT OUT=dataset_salida;
RUN;

Procedimientos:
DATA=nombre_dataset Esta opcin permite especificar
cul es el dataset de trabajo.
Las instrucciones especficas de cada procedimiento son
un requisito indispensable para el funcionamiento del mismo,
y suelen estar relacionadas con las variables que se
analizan.
La instruccin WHERE permite estudiar slo los datos del
dataset que cumplen una cierta condicin.
La instruccin BY se utiliza para partir los datos del dataset
en diferentes grupos segn los valores que toma la variable
all mencionada.
La instruccin OUTPUT OUT=dataset_salida es una
opcin muy til que permite guardar los estadsticos
calculados por el procedimiento en un dataset que se llama
dataset_salida.
Para cualquier duda en la sintaxis de un procedimiento,
consultar el HELP.

Indice
01 INTRODUCCIN
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

PROCEDIMIENTOS /
PROCEDIMIENTES FRECUENTES

Procedimientos SAS
APPEND

Procedure Aadir datos a un dataset

CALENDAR

Procedure Calendario con fechas y citas

CATALOG

Procedure Manipula los catlogos de SAS

CHART

Procedure Grficos de barras sencillos

CIMPORT

Procedure Importacin de datos de otras versiones de SAS

COMPARE

Procedure Camparacin de Bases de datos

CONTENTS

Procedure Contenidos de un dataset

COPY

Procedure Realiza copias de un dataset

CORR

Procedure Correlacin entre variables

CPORT

Procedure Exportacin de datos de otras versiones de SAS

DATASETS

Procedure Manipulacin de datasets (eliminar).

DBCSTAB

Procedure Produce tablas de conversin a caracteres de doble-byte.

DISPLAY

Procedure Visualizar titulos

EXPLODE

Procedure Titulos grandes, va explotar caracteres.

EXPORT

Procedure Exportar datasets a texto (p. ej.)

FORMAT

Procedure Dar etiquetas a los valores de las variables

FORMS

Procedure Para crear etiquetas adesivas

FREQ

Procedure Tablas de frecuencias

PROCEDIMIENTOS /
PROCEDIMIENTES FRECUENTES

Procedimientos SAS
FSLIST

Procedure Examinar ficheros externos al SAS

IMPORT

Procedure Importar datos (p. ej. en formato texto)

MEANS

Procedure Resumir los datos

OPTIONS

Procedure Opciones de la ventana OUTPUT

PLOT

Procedure Diagramas de dispersin sencillos

PMENU

Procedure Prepara Menus para ser utilizados por otros mdulos de SAS (AF, FSP)

PRINT

Procedure Listar datasets

PRINTTO

Procedure Defini las rutas dnde almacenar las ventanas LOG y OUTPUT

RANK

Procedure Crea Rangos a partir de variables.

REGISTRY

Procedure Mantiene el registro de SAS.

REPORT

Procedure Para realizar informes

SORT

Procedure Ordenar un dataset

SQL

Procedure Consultas a datasets mediante instrucciones SQL

STANDARD

Procedure Produce variables estandarizadas

SUMMARY

Procedure Estadsticos de Resumen

TABULATE

Procedure Tablas

TIMEPLOT

Procedure Diagramas de dispersin respecto el tiempo

TRANSPOSE

Procedure Transpone datasets

TRANTAB

Procedure Produce y mantiene tablas de traduccin de cdigos

UNIVARIATE

Procedure Anlisis univariados

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
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

PROC SQL / SINTAXIS


PROC SQL
Sintaxis:
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
- aadir y modificar valores de datos en conjunto de
datos
- aadir, modificar o borrar columnas en un
conjunto de datos
Query-expression contiene sentencias SQL.

Indice
01 INTRODUCCIN
02 PROCEDIMIENTOS Y PASO DATA
03 LIBRERIAS
04 PASO DATA
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

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;

PROC SQL; CREATE TABLE FIEBRE.FINAL AS


SELECT * FROM lefttab as l inner join righttab as ron (l.continent=r.continent);
QUIT;
Left :
PROC SQL; CREATE TABLE FIEBRE.FINAL AS
SELECT * FROM lefttab as l left join righttab as ron
(l.continent=r.continent);
QUIT;
Right
PROC SQL; CREATE TABLE FIEBRE.FINAL AS
SELECT * FROM lefttab as l right join righttab as r
on (l.continent=r.continent);
QUIT;
Full
PROC SQL; CREATE TABLE FIEBRE.FINAL AS
SELECT *FROM lefttab as l full join righttab as r
on (l.continent=r.continent);
QUIT;

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 ms 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 ms 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 ms las filas de cada una de las
tablas que no se han cruzado con ninguna de la otra.

Indice
01 INTRODUCCIN
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 Libreras
09.2 Ejemplo: Oracle, SQL Server, DB2, Teradata
10 MACROS
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

CONEXIONES A BBDD /
LIBRERIAS
Conexiones a BBDD
Sintaxis:
Libname libref engine-name <SAS/ACCESS-connectionn-opt>
<SAS/ACCESS-LIBNAME-opts>

Libname -> Sentencia para la declaracin de libreras


Libref -> Nombre de la conexin definida para el acceso a base de datos.
Alias de conexin.
Engine-name .> Nombre del motor de SAS /ACCESS definido para las diferentes
conexiona a BBDD
SAS/ACCESS-connectionn-opt-> Opciones para la conexin a la base de datos,
por ejemplo usuario, password, ...
SAS/ACCESS-LIBNAME-opts -> Opciones para la librera declarada.

Indice
01 INTRODUCCIN
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 Libreras
09.2 Ejemplo: Oracle, SQL Server, DB2, Teradata
10 MACROS
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

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 opcin de
windows de Administracin de Dispositivos.

DB2

DB2:

libname DB2UDB db2 database=XXXXX user=xxxxx


password=xxxxx;

ORACLE
libname Oracle oracle user=xxxxxxx" password=xxxxxxxx"
path=xxxx" schema=xxxxx';

TERADATA
libname terasas teradata database='ddbb' user='user' pw='pass';

Es necesario tener catalogadas las bases de datos en el


cliente DB2 para realizar la conexin.

Oracle:
Es necesario catalogar la base de datos en el
TNS_Names.ora para realizar la conexin a la base de
datos.

Teradata:
Es necesario tener catalogadas las bases de datos en el
cliente Teradata para realizar la conexin.

Indice
01 INTRODUCCIN
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 Introduccin
10.1 Variables de macro
10.2 Generacin de cdigo
10.3 Macros con parmetros de entrada
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

Macros / Introduccin
La programacin Macro es una herramienta muy til para estandarizar,
extendery la programacin clsica en cdigo SAS. Entre otras virtudes, permite
reducir en gran medida la cantidad de cdigo necesario para las tareas ms
frecuentes.
La ventana de programacin para crear Macros, es la ventana
habitual de sintaxis.
La programacin 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.

Indice
01 INTRODUCCIN
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 Introduccin
10.2 Variables de macro
10.3 Generacin de cdigo
10.4 Macros con parmetros de entrada
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

MACROS / VARIABLES
MACROS
Macros : Variables
Sintaxis:
libname :
% let nombre = literal_nombre ;
Formula:
%let num=%eval (5*2); -> uso en formulas

Variables definidas por el sistema:


sysdate
Sysday
Syslast
syserr

Variables Macro:
La instruccin %let permite asignar a un nombre un
conjunto de caracteres. Las referencias a variables Macro ya
creadas siempre sern precedidas por el smbolo: &.Los
nombres de variables Macro no pueden contener caracteres
extraos cmo:; , espacio AND OR etc.

Variables definidas por el sistema:


Lista do de variables definidas por el sistema

Variables definidas por el sistema:

Variables definidas por el sistema:


%let macr=%nrtsr(%pl); ( se asigna a macr el litera pl)
%let plo = %str(proc print ; run;);

Se recomienda que empiece por letra o _. Para listar todas


las variables %put_all_;

Indice
01 INTRODUCCIN
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 Introduccin
10.2 Variables de macro
10.3 Generacin de cdigo
10.4 Macros con parmetros de entrada
11 COMPRESION DE TABLAS PROC SQL
12 PROCEDMIENTOS ESTADISTICOS

MACROS / GENERACION DE
CODIGO MACROS
Macros : Cdigo condicionales y repetitivas
Sintaxis:
% macro nombre macro;
expresion
% mend nombre macro

Condiciones
% macro EJEMPLO1(info=);
% if &info=a then %do;
proc sort; data=prueba
run;
% else %if &info=b %then %do;
proc print noobs label;
run;
% else %put Resultado &INFO
%mend;

Estructura general de una macro:


Se puede introducir cdigo SAS ( pasos data,
procedimientos, funciones..).
Para invocar una macro es necesario el prefijo %
Para introducir comentarios se utiliza %*

Condiciones :
Instruccin condicional:
%IF ... %THEN..; %ELSE... ;
Y son mas de una instrucion en los bloques
then o else se utiliza %DO; .. %END;

Instruccin Repetitivas: (Ejemplo)


%do i=1:%to &num;
%put &num Resultado;
%end;

Indice
01 INTRODUCCIN
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 Introduccin
10.2 Variables de macro
10.3 Generacin de cdigo
10.4 Macros con parmetros de entrada
11 COMPRESION DE TABLAS
12 PROCEDMIENTOS ESTADISTICOS

MACROS / PARAMETROS DE
ENTRADA
Macros : Parmetros 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);

Definicin de los parmetros de entrada:

Definicin

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);

Indice
01 INTRODUCCIN
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
11.1 CPORT
11.1 CIMPORT
12 PROCEDMIENTOS ESTADISTICOS

COMPRESION DE TABLAS / CPORT

Compresin de tablas : CPORT


Sintaxis:
Libname nom_lib directorio_lib';
proc cport lib=nomb_lib file=nombre-result.cpo';run;

CPORT:
El procedimiento para la compresin de los datos de

una librera en un archivo cpo.


Se puede utilizar para comprimir tablas en un
entorno Windows y exportarlas a un entorno Unix

Indice
01 INTRODUCCIN
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
11.1 CPORT
11.2 CIMPORT
12 PROCEDMIENTOS ESTADISTICOS

COMPRESION DE TABLAS / CIMPORT

Compresin 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 descompresin de los


datos de archivo cpo a una librera.
Se puede utilizar para comprimir tablas en
un entorno Windows y exportarlas a un
entorno Unix

Indice
01 INTRODUCCIN
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
12.1 PROC univariate
12.2 PROC Freq

PROCEDMIENTOS ESTADISTICOS / PROC UNIVARIATE

Procedimientos estadsticos : 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;
VAR EDAD;
RUN;
PROC PRINT DATA=U_EDAD;
RUN;

Proc Univariate:
El procedimiento PROC UNIVARIATE se utiliza para
cuando el objetivo del anlisis es por ejemplo testar una
hiptesis o bien cualquier otro anlisis ms profundo de los
datos, es interesante explorar ms detalladamente las
variables y obtener otros estadsticos descriptivos as como
tests relativos a la distribucin de los datos.

Indice
01 INTRODUCCIN
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
12.1 PROC univariate
12.2 PROC Freq

PROCEDMIENTOS ESTADISTICOS / PROC FREQ

Procedimientos estadsticos : Proc Freq


Sintaxis:
PROC FREQ DATA=FIEBRE.GRADOS;
TABLES SEXO /OUT=F_SEXO;
RUN;
PROC FREQ DATA=FIEBRE.GRADOS;
TABLES SEXO /TESTP=(0.4 0.6);
RUN;

Proc Freq:
El procedimiento FREQ genera tablas de frecuencias. Este
procedimiento, tambin puede ser til para observar la
calidad de los datos, comprobando si hay valores extraos o
faltantes.

Vous aimerez peut-être aussi