Está en la página 1de 49

Software Estadístico

Samuel Pérez Quispe


Introducción
El sistema informático-estadístico SAS (Statistical
Analisys System) permite realizar los cálculos
estadísticos para los datos, en forma rápida y
confiable, es uno de los sistemas más antiguos y
populares en la actualidad.

2
Entorno del SAS

3
Estructura del programa SAS
Data …;
sentencias SAS;
:::::::::::::::
PROC ….;
sentencias SAS;
:::::::::::::::
PROC ….;
sentencias SAS;
:::::::::::::::
:::::::::::::
RUN;
4
Ejecutar un programa SAS
1. Usando el icono:

2. Escribiendo el comando directo “SUBMIT”

3. A través del menú “Ejecutar/Procesar”

5
Sentencia DATA
El SAS maneja el conjunto de datos como ‘archivo’, para cualquier
sentencia, el último archivo es el activo. Tiene el siguiente
formato:
DATA nombre_archivo (opción1, opción2,…);
Las opciones más comunes son:
DROP=variables a no incluir.
KEEP=variables a usar (contrario a DROP).
RENAME=para renombrar la variable.
FIRSTOBS=m para que empiece los datos a partir de m.
OBS=n para que finalice en la posición n. (m<n).
WHERE=condición se trabajará con los que cumplan.
6
Uso de DROP y KEEP

7
Creando ficheros SAS (DATA)

Data Ejem1;
Input nombre $ 1-15 sexo $ 12 edad 13-16 ….;
Cards;
Alicia F 26 …
Tomas H 32 …
::::::::
;
Run;

8
Comentarios en SAS (DATA)

/* …. Comentario1 */
• ….. Comentario2 ;

9
Uso de RENAME y WHERE

1
0
Uso de FIRSTOBS y OBS

1
1
Sentencia SET
Permite juntar uno o más archivos, es recomendable que
tengan el mismo nombre las variables. El formato es:
SET archivo1 archivo2 … ;

12
Omitir variables con SET

13
Tomar rango de registros con SET

14
Seleccionar registros con SET

15
Sentencia MERGE
Permite juntar uno o más archivos pero a través de las
variables. El formato es:
MERGE archivo1 archivo2 … ;

16
Diferencia entre SET y MERGE

17
Leer datos de archivo
La sentencia INFILE permite leer datos de un archivo.

Archivo en código ASCII Programa en el SAS Resultado del SAS

18
Guardar datos en archivo
Permite guardar los datos del archivo presente
en un archivo externo. Put es semejante a Input.

19
Crear y modificar variables
Para crear variables, utilizar el formato:
NuevaVariable=expresión;
Si se desea modificar:
Variable=Variable operador expresión;
El operador puede ser: +, -, /, *, **, ….

20
Sentencia IF
Permite realizar una operación si satisface una determinada
condición. El formato es:
IF condición;
Los operadores relacionales son:
EQ o = (igual a)
NE o ^= (diferente de)
LT o < (menor que)
GT o > (mayor que)
LE o <= (menor o igual que)
GE o >= (mayor o igual que)
Los operadores lógicos son:
OR, AND y NOT 21
Aplicaciones del IF

22
Sentencia IF-THEN
Si cumple la condición entonces realiza una acción.
En el ejemplo se eliminan los valores si x=5.

23
Sentencia IF-THEN-ELSE
El formato es:
IF condición THEN sentencia1;
ELSE IF condición2 THEN sentencia2;
:::::::
ELSE sentencia;
.

24
Uso del IF-THEN-ELSE
data ejem1;
input X Y @@;
if X<5 then Z=1;
else Z=2;
cards;
4536742689356
;
proc print;
Run;
25
Sentencia DO
Obliga al SAS a que las sentencias posteriores, se ejecuten
como una sola unidad hasta que se encuentre una END. El
formato:
DO;
sentencias SAS;
END;

26
Paso PROC
Un paso PROC es un grupo de una o más
sentencias SAS que comienza con la instrucción
PROC y que normalmente se sitúan después del
paso DATA, para usar su conjunto de datos. Las
sentencias más comunes son:
BY, CLASS, FREQ, ID, OUTPUT, VAR, WHERE,
WEIGHT, ATTRIB, FORMAT y LABEL.

27
BY del Paso PROC
BY Indica que será procesado por las variables
incluidas en BY.
data ejem1;
input edad sexo $ @@;
cards;
4D5D3V6V7D4V2V
;
proc sort;
by descending sexo;
proc means;
by descending sexo;
var edad;
run; 28
CLASS del Paso PROC
CLASS Identifica variables de clasificación en el
análisis.
data ejem1;
input edad sexo $ @@;
cards;
4D5D3V6V7D4V2V
;
proc means;
class sexo;
var edad;
run;

29
FREC del Paso PROC
FREQ Identifica una variable que representa
frecuencias de ocurrencia de los casos.

data ejem1;
input nro edad @@;
cards;
423233
;
proc means;
var edad;
freq nro;
run;
30
WEIGHT del Paso PROC
Introduce la variable que contiene las ponderaciones o
pesos de las observaciones. El formato es:
WEIGHT variable;

31
LABEL del Paso PROC
Se utiliza para asignar etiquetas a las variables. El
formato es:
LABEL var1 =‘etiqueta1’ var2 =‘etiqueta2’…;
data ejem1;
input edad sexo $ @@;
cards;
4D5D3V6V7D4V2V
;
proc means;
var edad;
label edad='años cumplidos';
run;

32
WHERE del Paso PROC
Selecciona datos, siempre que satisfaga lacondición:
WHERE condición;
data ejem1;
input edad sexo $ @@;
cards;
4D5D3V6V7D4V2V
;
proc means;
where sexo='D';
var edad; Analizará sólo para las
run; DAMAS (D)
33
“OUTPUT OUT” del Paso PROC
Crea uno o varios conjuntos de datos SAS como
salida de un procedimiento. El formato es:
OUTPUT OUT=nombre_datos;
data ejem1;
input edad sexo $ @@;
cards;
4D5D3V6V7D4V2V
;
proc means;
where sexo='D';
var edad;
output out=DAMAS;
data ejem2;
set DAMAS;
proc print;
run;
34
Sentencia TITLE
Permite poner hasta 10 títulos al principio. El
formato es:
TITLEn ‘texto’;
data ejem1;
input edad @@;
cards;
423233
;
proc print;
title1 'TITULO PRINCIPAL';
title2 'SEGUNDO TITULO';
run;
35
Sentencia FOOTNOTE
Permite imprimir hasta 10 líneas al final de la página,
como pie de página. El formato es:
FOOTNOTEn ‘texto’;

data ejem1;
input edad @@;
cards;
423233
;
proc print;
footnote1 'NOTA PIE PAGINA1';
footnote2 'NOTA PIE PAGINA2';
run;
36
Funciones matemáticas
ABS(x) Valor absoluto de x
FACT(x) Factorial de x
COMB(x,y) Combinación de x sobre y
SQRT(x) Raíz cuadrada de x
SIGN(x) Signo de x
MOD(x,y) Resto de x/y
EXP(x) Exponencial de base e.
LOG(x) Logaritmo neperiano de x
LOG2(x) Logaritmo en base 2 de x
LOG10(x) Logaritmo decimal de x
ERF(x) Función error
CONSTANT(‘PI’) Valor numérico de π=3.14159…
CONSTANT(‘E’) Valor numérico de e=2.71…
37
Funciones de Estadística Descriptiva
SUM(a,b,c,…) Suma de los números a,b,c…
MAX(a,b,c,…) Halla el máximo de a,b,c…
MIN(a,b,c,…) Halla el mínimo de a,b,c…
MEAN(a,b,c,…) Saca la media de a,b,c…
STD(a,b,c,…) Halla la desviación estándar de a,b,c…
VAR(a,b,c,…) Halla la varianza de a,b,c…
CV(a,b,c,…) Halla el coeficiente de variación de a,b,c…
SKEWNESS(a,b,c,…) Coeficiente de asimetrií para a,b,c…
KURTOSIS(a,b,c,…) Apuntamiento de Kurtosis para a,b,c…
CSS(a,b,c,…) Suma de cuadrados corregida
USS(a,b,c,…) Suma de cuadrados no corregida
STDERR(a,b,c,…) Error estándar de a,b,c…
data ejem1;
pi=3;
e=2;
pie=sum(pi,e,5);
proc print; 38
run;
Comandos directos del SAS
COLS Proporciona el número de columna
D `n` Borra `n` líneas
DOWN `n` Baja la pantalla `n` líneas
UP `n` Sube la pantalla `n` líneas
FILE `archivo` Guarda el contenido en un `archivo`
I `n` Inserta `n` líneas
INCLUDE `archivo` Carga el `archivo` al sistema
LEFT `n` Mueve la pantalla `n` columnas a la izquierda
RIGHT `n` Mueve la pantalla `n` columnas a la derecha
OPTIONS Sale temporalmente a la ventana de opciones
BYE Termina el SAS
END Regresa a las ventanas principales
CANCEL Cancela los cambios
N Mueve el cursor a la línea `n`
X Sale temporalmente del SAS
TOP Mueve el cursor a la primera línea del archivo
BOTTOM Mueve el cursor a la última línea del archiivo 39
EXIT Regresa al sistema SAS
Comandos directos del SAS
HALF Avanza cada ½ página
A After (después de)
B Before (antes de)
C Copiar 1 línea
CC Copiar bloque (marcar CC … CC)
D Suprimir línea
DD Suprimir un bloque
SUBMIT Equivale a F10, ejecuta el programa
RECALL Equivale a F9, recupera el programa

40
Procedimientos
Estadisticos
Procedimiento UNIVARIATE
Proporciona estadísticas descriptivas.
PROC UNIVARIATE DATA= NOPRINT PLOT FREQ NORMAL PCTLDEF= VAR­DEF= ;
VAR variables; BY variables; FREQ variable;
WEIGHT variable; ID variables; OUTPUT OUT= keyword=names...;
PCTLPRE= PCTLPTS = PCTLNAME=;

data ejem1;
input x @@;
cards;
3454647
;
proc univariate;
var x;
run; 42
Procedimiento MEANS
Proporciona estadísticas descriptivas univariantes.
PROC MEANS DATA= NOPRINT MAXDEC= VARDEF= N NMISS MEAN STD MIN MAX
RANGE SUM VAR USS CSS STDERR CV SKEWNESS KURTO­SIS T PRT SUMWGT;
VAR variables;
BY variables; CLASS variables; FREQ variable;
WEIGHT variable; ID variables; OUTPUT OUT= keywords=nombres ;

data ejem1;
input x @@;
cards;
3454647
;
proc means;
var x;
run; 43
Procedimiento PLOT
Dibuja una variable contra otra para producir un diagra­ma de dispersión
PROC PLOT DATA= UNIFORM NOLEGEND FORMCHAR= VTOH= NOMISS
VPERCENT= HPERCENT=;
PLOT vertical*horizontal/VAXIS= HAXIS= VZERO HZERO VREVER­SE VREF=
VREFCHAR='c' HREF= HREF­CHAR='c' VPOS HPOS VSPACE= HSPACE= OVERLAY CON­
TOUR= SLIST= ;
BY variables;

DATA PRUEBA;
INPUT Y X @@;
CARDS;
6 5 6 6 8 7 7 8 12 9 14 13
;
PROC PLOT;
PLOT X*Y;
QUIT;

44
Procedimiento CORR
Calcula coeficiente de correlación entre varia­bles, incluyendo el producto momento de
PEARSON y la pondera­ción de correla­ción producto‑­momento. El formato a utilizar es:
PROC CORR DATA= OUT= RANK BEST=n VARDEF= NOSIMPLE
NOPRINT NOPROB NOMISS SSCP COV NOCORR;
VAR variables;
WITH variables;
WEIGHT variable;
FREQ variable;
BY variables;

DATA EJEM1;
INPUT Y X @@;
CARDS;
6 5 6 6 8 7 7 8 12 9
;
PROC CORR;
var X Y;
QUIT; 45
Procedimiento GLM
Utiliza el método de mínimos cuadrados para ajus­tar modelos lineales generales. Entre
los métodos estadísticos disponibles en GLM son regresión, el análisis de varianza,
análisis de covarianza, análisis multivarian­te de varianza y correlación parcial. El formato:
PROC GLM DATA= OUTSTAT= OR­DER=FORMATTED|FREQ|DATA|INTERNAL;
CLASS variables; Si usa, debe preceder a MODEL.
MODEL dependents=independents/NOINT INT INTERCEPT NOUNI SOLUTION TOLERANCE
E E1 E2 E3 E4 SS1 SS2 SS3 SS4 P CLM CLI ALPHA=p XPX INVERSE SINGULAR= ZE­TA= ;
CONTRAST 'etiqueta' Efectos../E E= ETYPE= SINGU­LAR= ;
ESTIMATE 'nombre' Efectos... /E DIVISOR= SINGU­LAR=;
LSMEANS efectos/E STDERR PDIFF E= ETYPE= SINGULAR= ;
MANOVA H=efectos E=efecto M=ecuaciones MNAMES= PRE­FIX=/ PRINTH PRINTE
HTYPE= ETYPE= ORTH CANONICAL SUMMARY ;
OUTPUT OUT= PREDICTED|P= RESIDUAL|R= ; RANDOM efectos / Q ;
REPEATED NombreFactor nivel (ValorsNivel) CONTRAST(n) | POLYNOMIAL| HELMERT
|MEAN(n) | PROFILE, ... / NOM NOU PRINTM PRINTH PRINTE PRINTRV SUMMARY
CANONICAL HTYPE=;
TEST H=efectos E=efecto / HTYPE= ETYPE= ;
ABSORB variables; BY variables; FREQ variable; ID variables;
MEANS efectos / DEPONLY BON DUNCAN GABRIEL REGWF REGWQ SCHEFFE SIDAK
SMM|GT2 SNK T|LSD TUKEY ALPHA=p WALLER KRATIO= LINES CLDIFF CLM
NOSORT E=ETYPE= HTYPE=; 46
WEIGHT variable;
Procedimiento REG
PROC REG DATA= OUTEST= OUTSSCP= NOPRINT SIMPLE
USSCP ALL COVOUT CORR SINGULAR=n ;
MODEL dependents=regressors /METHOD= NONE | FORWARD | BACKWARD | STEPWISE |
MAXR | MINR | RSQUARE SLENTRY= SLSTAY= SELECT= INCLUDE= START= STOP=
NOPRINT NOINT ALL XPX I SS1 SS2 STB P R CLM VIF COVB CORRB COLLIN COLLINOUT
TOL CLI DW INFLUENCE PARTIAL DETAILS SIGMA= ADJRSQ AIC BIC CP GMSEP JP
MSE PC RMSE SBC SP SSE B;
VAR variables; ID variable; FREQ variable;
WEIGHT variable; ADD variables; DELETE variables;
DELOBS n;
PRINT ALL XPX I SS1 SS2 STB TOL VIF COVB CORRB COLLIN COLLININT P R CLM CLI DW
INFLUENCE PAR­TIAL ANOVA ;
OUTPUT OUT=SASdataset PREDICTED= RESIDUAL= L95M= U95M= L95= U95= STDP= STDR=
STDI= STUDENT= COOKD= H= PRESS= RSTUDENT= DFFITS= COVRATIO=;
TEST equation1,...equationk / PRINT ;
MTEST|MTEST equation,...equationk / PRINT CANPRINT DETAILS ;
BY variables;
47
Procedimiento TTEST
Computa una estadística t para probar la hipóte­sis que la media de la variable es igual
a un valor determinado. El formato a utilizar es el siguiente:

PROC TTEST DATA= opciones ;


CLASS variables; Declaraciones requeridas
VAR variables;
BY variables;

DATA PRUEBA;
INPUT X @@;
CARDS;
6 5 6 6 8 7 7 8 12 9
;
PROC TTEST H0=5 ALPHA=0.01;
VAR X;
QUIT;

48
Fin

También podría gustarte