Вы находитесь на странице: 1из 51

Paquete Estadstico SAS

Introduccin:
El paquete SAS (Statistical Analysis System) es un sistema de programas para el
anlisis de datos. Consiste de un conjunto de mdulos capaces de entregar
resultados de diferentes procesos como regresin, anlisis de varianza, estadstica
bsica, distribucin de frecuencias, procedimientos multivariados y muchos mas.

SAS bajo MSDOS

Entrada al paquete SAS

Para entrar al paquete SAS bajo MSDOS se deben de teclear las siguientes
ordenes:
CD\
CD SAS
SAS

Al entrar a SAS se observan 3 diferentes ventanas:

OUTPUT de color azul claro, donde saldrn los resultados de los


programas o las salidas de los anlisis.
LOG de color gris, donde se vern si existen o no errores en la sintaxis de
las instrucciones en el momento que se estn ejecutando.
EDIT de color azul obscuro, lugar donde se pueden escribir los programas
al travs de un editor lineal.

En cada una de las ventanas de SAS encontrar una orden llamada:


COMMAND ==> Esta parte del SAS permite la entrada de diversas ordenes o
comandos al sistema.

Salida del SAS

Para salir del paquete SAS bajo MSDOS se escribe BYE despus de la orden
COMMAND ==> BYE. Tambin puede salir del SAS si escribe ENDSAS

Teclado de Funciones del SAS

Las teclas de funciones son ordenes pre-programadas para el manejo del paquete
SAS.
A continuacin se indican las ms importantes para el SAS bajo MSDOS:
F1 AYUDA
F2 Teclado programado de funciones.
F3 Ventana de mensajes de compilacin (LOG)
F4 Ventana de salida de resultados (OUTPUT)
F5 Siguiente ventana (NEXT)

F6 Ventana del editor de programas (PGR)


F7 Agrandar o reducir ventana (Zoom)
F8 Subtpicos.
F9 Llamar el programa de nuevo al editor de programas.
F10 Reducir la ventana y ejecutar (Zoom off)

Comandos del SAS

Los comando en SAS son ordenes pre-definidas con una accin en particular, se
escriben despus del indicador de Command ==>. En caso de que el cursor no se
encuentre junto a Command ==> presione la tecla de INICIO (HOME).
Algunos de los comandos ms comunes son:
HELP.- Ayuda
END.- Cierra la ventana activa con excepto las de OUTPUT, LOG, EDIT.
TOP.- Manda el cursor a la parte ms alta de la ventana activa (primer rengln).
BOTTOM.- Manda el cursor a la parte ms baja de la ventana activa (ltimo
rengln)
BYE.- Salida del paquete SAS. Tambin se puede usar el
comando ENDSAS para salir del SAS.
FILE "RUTA:NOMBRE.EXT".- Almacena el contenido de una ventana en
disco duro o flexible. Para este comando se recomienda utilizar diferentes
extensiones para el almacenamiento de datos. Estas extensiones son:
Para la ventana de OUTPUT extensin TXT
Para la ventana de LOG extensin LOG
Para la ventana del editor extensin SAS
Por ejemplo:

FILE "A:DATOS.SAS"
En el ejemplo se almacena en la ventana del editor el programa datos en el disco
flexible unidad A.

FILE "PRN".- Manda el contenido de la ventana activa a la impresora.

INCLUDE "RUTA:NOMBRE.EXT".- Llama un programa desde una unidad


de discos a la ventana activa. Si en la ventana activa exista informacin la agrega
al final de los datos.

Por ejemplo:
INCLUDE "A:DATOS.SAS"
En el ejemplo se llama el archivo DATOS.SAS de la unidad A para ser agregado
en la ventana activa.

CHANGE.- Cambia caracteres dentro del editor de texto.


Por ejemplo:
CHANGE "&" "@" ALL Cambia el smbolo & por @ en el editor de programas.

Algo muy comn en SAS es eliminar los saltos de pgina que automticamente
SAS asigna en la salida de resultados esto se puede hacer:
CHANGE " " " " ALL Cambia el smbolo por un espacio en blanco en el editor
de programas.

SAS bajo X-Win 32

SAS bajo UNIX es un sistema que trabaja en Windows 95 / 98 en el modo de XWin 32.
Para entrar al paquete se selecciona INICIO, PROGRAMAS Y X-Win32 como lo
indica la siguiente figura:

Al entrar a X-Win32 y seleccionar SAS como paquete la computadora muestra la


entrada siguiente:

Despus de algunos segundos aparecen diferentes ventanas como lo muestra la


siguiente figura.

Algunos mens de SAS bajo X-Win 32


FILE

Open.- Se utiliza para abrir un documento.


Import.- Se utiliza para importar un documento en formato dbf o o en otros
formatos.
Save.- Guarda el contenido de la ventana activa. Si el programa no tiene nombre
SAS lo pregunta.
Save as... .- Permite nombrar y guardar el contenido de un programa.
Export.- Permite Exportar programas de SAS a otros formatos.
Print.- Se utiliza para imprimir el contenido de una ventana activa en SAS en la
impresora de la red.
Print utilities.Sent mail ... .- Manda el contenido de una ventana a una cuenta de correo
electrnico.
Exit .- Se utiliza para salir de SAS.

EDIT

Undo.- Se utiliza para eliminar la ltima accin dada en SAS.


Deselect.- Se utiliza para quitar la seleccin de texto dentro de una ventana de
SAS.
Cut selected text.- Corta el texto seleccionado.
Copy to paste buffer.- Almacena la informacin seleccionada en la memoria de
la computadora para ser utilizada en otro momento.
Paste text.- Pega la informacin que se encuentre dentro de la memoria
previo Copy to paste buffer
Clear selected text.- Borra el texto seleccionado.
Clear text .- Borra todo el texto.
Select text.- Se utiliza para marcar o seleccionar todo el texto.
Select all.- Se utiliza para seleccionar todo el contenido de la ventana activa.
Find ... .- Busca palabras dentro de la ventana activa.
Repeat find .- Repite el comando Find con la ltima bsqueda.
Change.- Se utiliza para cambiar palabras o smbolos dentro de una ventana
activa.
Repeat change.- Repite el comando Change con el ltimo cambio
Check spelling.- Se utiliza para verificar la sintaxis de los programas en SAS.
Options.- Permite entrar a las diferentes opciones del SAS para X-Win 32

VIEW

Change display .- Permite cambiar el tipo de monitor en que se esta trabajando.


Preferences... .- Muestra una ventana de dialogo con las preferencias sobre las
ventanas de dialogo de SAS.
ToolBox .- Muestra una ventana con la caja de herramientas de SAS
Edit ToolBox ... .- Permite editar la caja de herramientas
Close ToolBox ... .- Cierra la ventana de la caja de herramientas.
Change Directory... .- Permite cambiar el directorio del sistema
Change Font... .- Permite cambiar el tipo de letra de las ventanas en SAS.

GLOBALS

Dentro del men de Globals aparecen diferentes ordenes, algunas de estas son:
Program editor (Editor de programas) llama la ventana del editor de
programas. El Program editor es el lugar donde se escriben los programas.
Log llama la ventana de log. Log es el lugar donde se ven si existen o no errores
en la sintaxis de las instrucciones en el momento que se estn ejecutando.
Output (Salida) llama la ventana donde salen los resultados de los programas o
las salidas de los anlisis.
Graph (Grfica) lugar donde saldrn las grficas del SAS.
La figura siguiente muestra el men de Globals

HELP

Extended help.- Muestra la ayuda completa de SAS para X-Win 32


Online training.Online documentation.- Muestra la documentacin en lnea.
Keys.- Muestra el funcionamiento de las teclas de funciones.
SAS System.- Referencia sobre el sistema SAS.
Sample Programs- Muestra ejemplos de programas elaborados para SAS.
SAS Companion.- Muestra informacin sobre el SAS bajo UNIX y
comparaciones con versiones anteriores.

What's New.- Muestra las cosas nuevas que tiene SAS con respecto a la versin
anterior.
About... .- Muestra informacin referente el paquete SAS para X-Win 32.

Teclado de Funciones del SAS bajo X-Win 32

Si selecciona el men de HELP dentro de cualquier ventana del paquete SAS


aparecen diferentes opciones, si se posiciona sobre KEYS y da clic con el ratn o
presiona la tecla de F2 SAS muestra la siguiente figura que indica el
funcionamiento de las diferentes teclas de funciones.

F1 AYUDA (Help)
F2 Teclado programado de funciones. (Keys)
F3 Ejecutar
F4 Ventana del editor de programas o llamado del programa al editor.
(PGM; RECALL)
F5 Siguiente bsqueda (rfind)

F6 Siguiente cambio(rchange)
F7 Atrs (backward)
F8 Adelante (forward).
F10 Izquierda (left)
F11 Derecha (right)

Estructura de un programa en SAS

Un programa en SAS tiene la Siguiente estructura:

En cada parte del programa en SAS se van indicado un conjunto de instrucciones,


estas se pueden repetir de acuerdo a las necesidades de anlisis.

Editor SAS

El Programa SAS bajo MSDOS tiene un editor donde se pueden escribir los
programas.
El PROGRAM EDITOR muestra una ventana con:
COMMAND ==>
ORDENES

00001 INSTRUCCIONES
00002
00003

En la parte superior aparece COMMAND ==> En esta parte se escriben los


comandos antes explicados, en la parte inferior aparece una numeracin, junto a
ella se escriben las instrucciones y sobre sta los ordenes del editor.

ORDENES DEL EDITOR DEL SAS BAJO MSDOS


Las ordenes del editor son letras pre-definidas con una funcin especfica y se
deben escribir en la primera columna de la seccin numrica. Estas ordenes son:

Agregar (I)
I Agrega lnea(s) en blanco.
Por ejemplo: se tienen las siguientes lneas:
00001 DATA S;
00002 CARDS;
00003 23 45 67 87

Se desea agregar un espacio entre las lneas 00001 y 00002. Para realizar la
insercin se coloca el cursor sobre la primera columna de la lnea 00001, se
teclea I y se presiona la tecla de ENTER.
I 001 DATA S;
00002 CARDS;
00003 23 45 67 87

El editor responde a la orden de la manera siguiente:


00001 DATA S;
00002
00003 CARDS;
00004 23 45 67 87

Se observa que se agreg una lnea despus de la 00001 y los renglones que le
seguan se recorrieron en la numeracin.

Si se desea agregar ms de una lnea, estas se pueden indicar despus de la


orden In, donde n es el nmero de lneas a agregar.
Por ejemplo:
Se desean agregar 3 lneas despus de la indicada con el nmero 00003 del
ejemplo anterior. Para efectuar esto se hace:
00001 DATA S;
00002
I3 03 CARDS;
00004 23 45 67 87

El editor responde como:


00001 DATA S;
00002
00003 CARDS;
00004
00005
00006
00007 23 45 67 87

NOTA: Se pueden insertar n lneas que no sean mltiplos de 10, esto es, 1 o 5 o 9 o 29 o 39 pero no 10 ni
20, , etc.

Borrar (D)
D Borra lnea(s) desde donde se indique la orden.
Para borrar una lnea del editor se utiliza la orden D. Por ejemplo:
Se desea borrar la lnea 00002 del editor de programas.
Para efectuar estos cambios es necesario colocar el cursor sobre la primera
columna de la lnea 00002, escribir la letra D y presionar ENTER ( ).
00001 DATA S;
D 002
00003 CARDS;
00004
00005
00006
00007 23 45 67 87
El editor del SAS responder con:
00001 DATA S;
00002 CARDS;
00003
00004
00005
00006 23 45 67 87

Observe que borr la lnea y recorri la numeracin en otras instrucciones hacia


arriba.

Si se desean borrar ms de una lnea esto se pueden hacer con la rden Dn donde
n es el nmero de lneas a borrar y no deben ser mltiplos de 10.
Por ejemplo:
Se desean borrar 3 lneas despus de la indicada con el nmero 00003 del
ejemplo anterior. Para efectuar esto se hace:
00001 DATA S;
00002 CARDS;
D3 03
00004
00005
00006 23 45 67 87

El editor responder como:


00001 DATA S;
00002 CARDS;
00003 23 45 67 87

Otra forma de borrar lneas es al travs del comando DD. Con DD puede indicar
el principio y el fin de un bloque que desea borrar. Por ejemplo:
1. Se desea borrar un bloque de lneas de la 00002 a la 00005. Para efectuar
esto se hace:
2. Se coloca el cursor sobre la lnea 00002 primera columna.
3. Se escribe DD y se presiona ENTER ( ).

4. Se mueve el cursos sobre la lnea 00005 primera columna.


5. Se escribe DD y se presiona ENTER ( ), como se muestra a
continuacin:
00001 DATA S;
DD CARDS;
00003
00004
DD
00006 23 45 67 87

Copiar una lnea(C,B)


C Indica la lnea que se desea copiar (origen).
B Indica la lnea donde se desea copiar (destino).
Por ejemplo: se desea copiar la lnea 00002 en la lnea 00005.
Para hacerlo:
1. Se coloca el cursos en la lnea 00002 primera columna
2. Se teclea C
3. Se presiona ENTER ( ), la numeracin 00002 desaparecer
4. Se mueve el cursor a la lnea 00005 primera columna,
5. Se escribe B
6. Se presiona ENTER ( ) como se muestra en la figura:
00001 DATA S;
C CARDS;
00003 23 45 67 87
00004
B

Aparecer la lnea copiada como se muestra en la figura siguiente:


00001 DATA S;
00002 CARDS;
00003 23 45 67 87
00004
00005 CARDS;

Copiar varias lneas o un bloque de lneas(CC,B)


CC Indica Inicio/Fin de bloque a copiar (origen).
B Indica que se copie el bloque (destino).
Por ejemplo: se desean copiar las lneas 00001 a la 00003 en la lnea 00005.
Para efectuar la copia:
1. Se mueve el cursor a la lnea 00001 columna 1
2. Se teclea CC .
3. Se presiona ENTER ( )
4. Se mueve el cursor a la lnea 00003 columna 1
5. Se teclea CC,
6. Se presiona ENTER ( ),
7. Se mueve el cursos a la lnea 00005 columna 1
8. Se teclea B
9. Se presiona ENTER ( ) como se muestra en la figura:
CC DATA S;
00002 CARDS;
CC 23 45 67 87

00004
B CARDS;
El resultado de esta operacin es:
00001 DATA S;
00002 CARDS;
00003 23 45 67 87
00004
00005 DATA S;
00006 CARDS;
00007 23 45 67 87
00008 CARDS;

Instrucciones bsicas

Las instrucciones son ordenes que se le da al paquete SAS dentro de un programa


para el anlisis de datos. Al termino de cada instruccin se debe escribir un punto
y coma (;).

OPTIONS

La instruccin OPTIONS indica al programa de SAS las opciones con que se


quiere trabajar para la salida de resultados. Las opciones ms utilizadas son:
LS ( Linesize) indica el nmero de columnas utilizadas.
PS (pagesize) indica el nmero de renglones utilizados.

NODATE indica que el reporte no tenga la fecha.


NONUMBER indica que el reporte no tenga nmero de pgina
Por ejemplo:
OPTIONS LS=80 PS=56 NODATE;
En el ejemplo se indica que se van a usar 80 columnas, 56 renglones y que el
reporte va sin fecha. Note que cada una de las opciones va separada por al menos
un espacio.

DATA

La instruccin DATA se usa para indicar un conjunto de elementos. Este conjunto


de datos muestran valores diferentes obtenidos en un experimento, una muestra o
la unin de diferentes subconjuntos de datos. El formato de la Instruccin DATA
es el siguiente:
DATA nombre del conjunto:
Por ejemplo:
DATA S;
Donde S indica el tamao de muestra.

INPUT

La instruccin INPUT se usa para indicar las variables que sern utilizadas para
el anlisis de datos. El formato de la Instruccin INPUT es el siguiente:
INPUT variable(s) [@@];

Las variables pueden ser numricas o alfanumricas ($) separadas por un espacio
en blanco.
Por ejemplo:
INPUT MERCADO $ X Y;
El ejemplo anterior muestra que la variable MERCADO es de tipo alfanumrica
y acepta letras y nmeros; X y Y son variables de tipo numricas.
Si se utiliza @@ los datos pueden introducirse en forma horizontal por ejemplo:
INPUT MERCADO $ X Y @@;
Si se utiliza @ los datos pueden introducirse desde un archivo externo en forma
de tabla.

CARDS

La instruccin CARDS indica al programa en SAS que se introducirn datos a


continuacin y que van a ser tomados por la(s) variable(s) puestas en INPUT. La
forma de escribir CARDS es la siguiente:
CARDS;
valor valor valor ...
...

Por ejemplo:
options ls=72 ps=60 nodate;
data s;
input x @@;
cards;
23 34 25 27 23 29 29 43 28 33 31 32 31 23 29
25 28 35 38 39 42 41 40 29 31 25 29 27 28 33

27 29 32 33 39 43 41 45 29 39 33 32 34 37 34
35 28 33 33 38 37 36 42 39 41 32 34 39 41 33
37 29 33 28 27 22 29 34 43 37 22 28 29 45 37
40 28 33 30 30 23 30 34 45 31 33 29 33 45 28
En el ejemplo anterior con options se indica que se utilizaran 72 columnas, 60
renglones y que no se quiere la fecha; en data se indica que el conjunto universal
se llama s; en input se indica que la variable x tomara valores en forma de tabla
utilizando la orden cards; despus cards indica que se escribirn los valores con
al menos un espacio.

INFILE

La instruccin INFILE se utiliza para indicar al programa que va a tomar datos


desde un archivo externo y no por conducto de la orden CARDS; la sintaxis para
infile es la siguiente:
INFILE 'RUTA:NOMBRE.EXT' ;
Si a la orden INFILE se le agrega MISSOVER esto indica que se van a pedir
otros archivos para analizar.
INFILE 'RUTA:NOMBRE.EXT' MISSOVER ;

Por ejemplo:
options ls=72 ps=60 nodate;
data s;
infile "edades.dat";
input x @;

Ciclos iterativos DO

Los ciclos iterativos en el paquete SAS se hacen utilizando las instrucciones:


DO variable=valor inicial TO valor final;
.....
.....
END;
Regularmente los ciclos iterativos se utilizan para indicar la entrada de valores a
variables para no indicar el valor de una sola. Por ejemplo:
data s;
do datos=1 to 5;
input obs @@;
output;
end;
cards;
24561

El valor que la variable datos tomar ser desde 1 hasta el valor de 5


incrementandose el valor de uno en uno, se introducirn 5 datos a la variable obs
que seran tomados desde afuera del ciclo(output) despus de la rden cards; esto
da como resultado:
datos obs
12
24
35
46
51
Los ciclos pueden estar anidados, por ejemplo:
do trat=1 to 5;
do bloq=1 to 5;
input obs@@;
output;
end;

end;
cards;
8 10 12 13 11
2 6 7 11 5
4 10 9 8 10
3 5 9 10 6
97553
donde la variable trat tomar valores desde 1 hasta 5, bloq desde 1 hasta 5, y en
total se tomarn 25 observaciones quedando los valores:

trat
1
1
1
1
1
...
...
5

bloq
1
2
3
4
5

obs
8
10
12
13
11

Condicionales por medio de IF-THEN

La instrucciones if-then son instrucciones que condicionan la entrada de datos de


un programa. Su formato es el siguiente:
IF condicin THEN instruccin;
Si se cumple la condicin se efectuar lo que indique la instruccin, por ejemplo:
IF trat=1 THEN trata="I";
Una de las formas en que ms se usa esta instruccin es para indicar que si
cumple con cierta condicin quite el dato del anlisis, esto se hace indicando la
instruccin DELETE.
IF ps<=0 THEN DELETE;

Procedimientos

Procedimiento PRINT

El procedimiento PRINT imprime las observaciones de un conjunto de datos en


forma de un reporte simple. El formato general de PRINT es el siguiente:
PROC PRINT;

Procedimiento FREQ

Con el procedimiento FREQ se puede obtener clculos de distribucin de


frecuencias de un conjunto de datos por variable indicada en INPUT, su formato
general es el siguiente:
PROC FREQ;

Procedimiento MEANS

MEANS se utiliza para obtener clculos de estadstica bsica, valor mnimo,


valor mximo, desviacin estndar, sumatorias, entre otras. El formato general
para MEANS es el siguiente:
PROC MEANS;

Si se desea sacar informacin sobre media, varianza, desviacin estndar, valor


mximo, valor mnimo, coeficiente de variacin y amplitud escriba la siguiente
orden:
PROC MEANS MEAN VAR STD MAX MIN CV RANGE;

Procedimiento SORT

El procedimiento SORT se utiliza para ordenar los datos en orden ascendente o


descendente. SORT se usa cuando los datos de entrada no estn completamente
ordenados para realizar algun anlisis en particular. El formato general para
SORT es el siguiente:
PROC SORT;
BY [descending] variable o variables;

En caso de que se desee el orden ascendente agregue lo que esta entre corchetes.
Por ejemplo:
PROC SORT;
BY DESCENDIG tamaos;
Procedimiento CHART

El procedimiento CHART hace grficas de en diferentes formas:


histogramas verticales y horizontales , grficas de bloques, pies y grficas de
estrella. CHART tiene como formato general:
PROC CHART;
Tipo de grfica;
Donde tipo de grfica puede ser:

VBAR variables;
HBAR variables:
BLOCK variables;
PIE variables;
STAR variables;
Nota: si se quiere sacar una grfica de pastel (PIE) debe escribir en el programa:
Options ls=72 ps=60;
Esto se hace por que la grfica de pastel no cabe en la salida por defecto de SAS.

Procedimiento PLOT

PLOT grfica una variable contra otra a travs de procedimientos


de impresin de grficos (grficas XY), su formato general es el siguiente:
PROC PLOT;
PLOT vertical*horizontal="caracter";

Otros Procedimientos
REG se usa para el modelo de regresin lineal simple, lineal mltiple y no lineal.
ANOVA es un procedimiento para hacer anlisis de varianza de los datos.
CORR procedimiento para calcular la correlacin entre datos.
GLM Modelo general lineal (General Lineal Model), con este procedimiento se
pueden hacer anlisis de varianza para diferentes modelos lineales como
regresin lineal simple, regresin lineal mltiple, diseos completamente al azar,
bloques al azar, cuadro latino, contrastes ortogonales, factoriales, entre otros ms.

Programas de SAS

Programa 1 Distribucin de frecuencias, estadstica bsica y grficas.

Clculo de la distribucin de frecuencias de datos, estadstica bsica y grfica de


histogrmas de un conjunto de datos correspondientes a 90 edades tomadas a un
grupo de personas en una cafetera un da del mes de mayo.
optionsls=72ps=60nodate;
datas;
inputx@@;
cards;
233425272329294328333132312329
252835383942414029312529272833
272932333943414529393332343734
352833333837364239413234394133
372933282722293443372228294537
402833303023303445313329334528
procprint;
procfreq;
procmeans;
procchart;
vbarx;
run;

Programa 2. Uso de Infile


Setienenlossiguientesdatos:
233425272329294328333132312329
252835383942414029312529272833
272932333943414529393332343734
352833333837364239413234394133
372933282722293443372228294537
402833303023303445313329334528

Los datos son capturados en un procesador de texto (EDIT del MSDOS o en otro
procesador). y almacenado con el nombre edades.dat como solo texto con saltos
de lnea o en cdigo ASCII para que SAS pueda leerlo.
El programa en SAS es el siguiente:
optionsls=72ps=60nodate;
datas;
infile"edades.dat";
inputx@;
procprint;
procfreq;
procmeans;
procchart;
vbarx;
run;

Note que la orden INFILE esta colocada antes de INPUT y que los datos deben
tener el orden como si se metieran con la orden CARDS.

Programa 3 Covarianza y correlacin.

La siguiente tabla consiste de las observaciones resultantes de medir el peso y la


estatura de cada uno de diez individuos.
Peso (X)

63

52

78

49

71

62

68

48

56

67

Estatura (Y)

162

158

167

151

162

168

167

153

152

173

Calcular la covarianza y la correlacin


*EjemplotomadodellibrodeMtodosEstadsticos,Cap.3.SaidInfanteGilyGuillermoZaratede
Lara.EditorialTrillas.datas

datas;
inputxy;
cards;
63162
52158
78167
49151
71162
62168

68167
48153
56152
67173
proccorrcov;
run;

Programa 4 Distribucin Binomial

Calcular la probabilidad de X desde 0 hasta 10 cuando X ~ Bin(10,0.4)


data s;
input p n x;
y=probbnml(p,n,x);
cards;
0.4 10 0
0.4 10 1
0.4 10 2
0.4 10 3
0.4 10 4
0.4 10 5
0.4 10 6
0.4 10 7
0.4 10 8
0.4 10 9
0.4 10 10
proc print;
run;

Programa 5 Distribucin Poisson

Calcular la probabilidad de X desde 0 hasta 8 cuando X~Poisson(0.9,X)


data s;
input lamda x;
y=poisson(lamda,x);
cards;
0.9 0
0.9 1

0.9 2
0.9 3
0.9 4
0.9 5
0.9 6
0.9 7
0.9 8
proc print;
run;

Programa 6 Distribucin Normal del Clculo de la Probabilidad puntual.

Calcular la probabilidad con z=-1, z=1, z=-2, z=2, z=-3 y z=-3


data s;
input z@@;
y=probnorm(z);
cards;
-1 1
-2 2
-3 3
proc print;
run;

Programa 7 Distribucin Normal del Clculo de la probabilidad entre dos


lmites.

Calcular la probabilidad de:


a. (-3 Z +3)
b. (-2 Z +2)
c. (-1 Z +1)
d. (-2.3 Z +3.4)
data s;
input zliminf zlimsup;
y=probnorm(zlimsup)-probnorm(zliminf);
cards;

-3 3
-2 2
-1 1
-2.3 3.4
proc print;
run;

Programa 8 Distribucin Chi cuadrada

a. Calcular alfa con 10 grados de libertad y un valor de 3.9403


b. Calcular alfa con 15 grados de libertad y un valor de 24.9958
data s;
input valor gl;
y=1-probchi(valor,gl);
cards;
3.9403 10
24.9958 15
proc print;
run;

Programa 9 Distribucin T

a. Calcular alfa con 25 grados de libertad y un valor de 1.700


b. Calcular alfa con 50 grados de libertad y un valor de 2.870
c. Calcular alfa con 1 grados de libertad y un valor de 1
d. Calcular alfa con 14 grados de libertad y un valor de 1.761
e. Calcular alfa con 30 grados de libertad y un valor de 2.042
data s;
input valor gl;
y=1-probt(valor,gl);
cards;
1.700 25
2.870 50

1 1
1.761 14
2.042 30
proc print;
run;

Programa 10 Distribucin F
data s;
input valor n m;
y=1-probf(valor,n,m);
cards;
3.3200 2 30
3.0556 4 15
proc print;
run;

Programa 11 Regresin lineal simple

Observaciones resultantes de medir el peso y la estatura de cada uno de diez


individuos.
Peso (X)

63

52

78

49

71

62

68

48

56

67

Estatura (Y)

162

158

167

151

162

168

167

153

152

173

*EjemplotomadodellibrodeMtodosEstadsticos,Cap.12.SaidInfanteGilyGuillermoZaratede
Lara.EditorialTrillas.

Para calcular el anlisis de varianza de la Regresin Lineal simple se hace:


datas;
inputxy;
cards;
63162
52158
78167

49151
71162
62168
68167
48153
56152
67173
procplot;
ploty*x;
procreg;
modely=x;
run;

El programa anterior muestra la regresin lineal simple y tambin agrega la


grfica de dispersin de puntos.

Programa 12 Regresin lineal mltiple

En seguida se presentan datos de tres variables de gran importancia econmica en


un pas. Las variables son:
Y1: petrleo y petroqumica.
Y2 Produccin de alimentos, bebidas y tabaco
Y3: energa elctrica
Los datos de estas variables se dan como ndices a lo largo de 15 aos. Todos los
datos son porcentajes de produccin con respecto al ao de 1960. La variable X
es 1 para 1961, 2 para 1962, ..., 15 para 1975.

Indices de volumen de la produccin Industrial en Mxico (1960 = 100%)


X(ao)

Y1

Y2

Y3

110.9

106.5

105.9

114.3

109.6

117.4

121.2

118.7

136.3

134.2

129.3

159.4

142.8

137.8

176.1

148.9

147.4

195.8

169.1

153.9

217.7

183.8

165.1

241.8

195.2

175.9

275.2

10

214.7

186.6

306.7

11

221.8

188.0

335.5

12

241.2

198.1

371.4

13

247.1

208.2

409.6

14

284.5

214.6

448.6

15

309.8

221.9

455.4

*EjemplotomadodellibrodeMtodosEstadsticos,Cap.3.SaidInfanteGilyGuillermoZaratede
Lara.EditorialTrillas.datas

data s;
input x y1 y2 y3;
cards;
1

110.9

106.5

105.9

114.3

109.6

117.4

121.2

118.7

136.3

134.2

129.3

159.4

142.8

137.8

176.1

148.9

147.4

195.8

169.1

153.9

217.7

183.8

165.1

241.8

195.2

175.9

275.2

10

214.7

186.6

306.7

11

221.8

188.0

335.5

12

241.2

198.1

371.4

13

247.1

208.2

409.6

14

284.5

214.6

448.6

15

309.8

221.9

455.4

proc reg;
model x=y1 y2 y3;
run;
Programa 13 Diseo Bsico

*Con el objeto de ilustrar el procedimiento de A. de V. se presenta un ejemplo sin


mayor inters prctico. Se tiene una muestra aleatoria de tamao 15, que se
supone una poblacin Normal ( , 2). Las observaciones en la muestra son:
Yi: 68, 69, 78, 86, 73, 69, 80, 67, 59, 68, 70, 66, 69, 72, 77
Se desea probar la hiptesis Ho: =68 contra Ha: 68.
*EjemplotomadodellibrodeMtodosEstadsticos,Cap.11.SaidInfanteGilyGuillermoZaratede
Lara.EditorialTrillas.

datas;
inputobs@@;
cards;
686978867369806759687066697277
procglm;
modelobs=;
run;

Programa 14 Diseo completamente al azar

*En un experimento se van a comprobar los porcentajes de carbohidratos en 4


marcas de pan, para lo cual se van a hacer 18 determinaciones: 5 en la primera
marca, 3 en la segunda, 4 en la tercera y 6 en la cuarta. Para obtener las
respuestas se tomarn muestras aleatorias de los tamaos especificados de cada
marca y se harn determinaciones de los porcentajes mediante un procedimiento
(hasta donde sea posible) idntico en las 18 unidades experimentales.
En la tabla se presentan los resultados de las 18 determinaciones de
carbohidratos.

Tratamiento 1

Tratamiento 2

Tratamiento 3

Tratamiento 4

(marca 1)

(marca 2)

(marca 3)

(marca 4)

63

60

59

70

68

65

66

69

71

61

58

62

59

71

70

69

70

66

*EjemplotomadodellibrodeMtodosEstadsticos,Cap.11.SaidInfanteGilyGuillermoZaratede
Lara.EditorialTrillas.

Para solucionar el problema por medio de un DCA el programa en SAS es:


datas;
inputtratobs;
cards;
163
168
171
170
169
260
265
261
359
366
358
359
470
469
462
471
470
466
procglm;
classestrat;
modelobs=trat;
run;

Programa 15 Bloques al azar

*Enunexperimentosequierencompararlascapacidadesdereproduccinde
frecuenciasbajasde4recubrimientosdecintamagnticaysevana
efectuar5observacionesdecadauno.Sepretendeutilizar5diferentes
grabadorasparaelexperimento,utilizandocadagrabadoracomounbloque
enelqueseprobaranlos4tratamientos.Elpropsitodelexperimentono
escompararlasgrabadorassinocompararloscuatrorecubrimientos.

Bloque

Tratamiento

Tratamiento

Tratamiento

Tratamiento

(grabadora)

20

10

30

22

30

20

39

26

32

19

37

27

18

26

23

26

18

29

20

*EjemplotomadodellibrodeMtodosEstadsticos,Cap.11.SaidInfanteGilyGuillermoZaratede
Lara.EditorialTrillas.

datas;
inputbloqtratobs;
cards;
1120
1210
1330
1422
2130
2220
2339
2426
3132
3219
3337
3427
4118
429
4326
4423
5126
5218
5329
5420
procglm;
classesbloqtrat;

modelobs=bloqtrat;
run;

El ejemplo anterior solo que ahora utilizando ciclos iterativos y condicionales:


optionsps=60;
datas;
dobloq=1to5;
dotrat=1to4;
inputobs@@;
iftrat=1thentrata="I";
iftrat=1thentrata="II";
iftrat=1thentrata="III";
iftrat=1thentrata="IV";
output;
end;
end;
cards;
20103022
30203926
32193727
1892623
26182920
procglm;
classesbloqtrata;
modelobs=bloqtrata;
run;

Programa 16 Cuadro Latino


datas;
inputhilerascolumnas$trat$dato;
cards;
1IF3.5
2IB4.2
3IA6.7
4ID6.6
5IC4.1
6IE3.8
1IIB8.9
2IIF1.9
3IID5.8

4IIA4.5
5IIE2.4
6IIC5.8
1IIIC9.6
2IIIE3.7
3IIIF2.7
4IIIB3.7
5IIID6.0
6IIIA7.0
1IVD10.5
2IVC10.2
3IVB4.6
4IVE3.7
5IVA5.1
6IVF3.8
1VE3.1
2VA7.2
3VC4.0
4VF3.3
5VB3.5
6VD5.0
1VIA5.9
2VID7.6
3VIE0.7
4VIC3.0
5VIF4.0
6VIB8.6
procglm;
classeshileracolumnatrat;
MODELdato=hileracolumnatrat;
MEANStrat/alpha=0.05tukey;
run;

Programa 17 Contrastes ortogonales

El experimento consiste en comparar los efectos de siete fungicidas y un testigo


sobre maz infestado con Diplodia spp. Se mide el nmero de semillas que
germinan, para este propsito se plante un diseo Bloques al Azar, en
condiciones de invernadero. Cada unidad experimental consiste de 25 semillas.
Los datos se dan en la tabla:

Bloq\Trat

A B

G H

16

14

10

12

19

16

11

19

24

14

12

22

13

11

19

14

19

13

A: Tratamiento testigo
B, C: Fungicidas mercricos
D, H: Fungicidas no mercricos producidos por la compaa I
E, F, G: Fungicidas no mercricos producidos por la compaa II. F y G son
nuevas formulaciones de E.

Se desea dividir la suma de cuadrados de tratamientos y los 7 grados de libertad


para dar un conjunto de comparaciones ortogonales. Las comparaciones estn en
la base de los tratamientos.
1. El efecto del testigo es igual al de los siete fungicidas.
2. El efecto de los Fungicidas Mercricos es igual al efecto de los fungicidas
no mercricos.
3. El efecto de los fungicidas mercricos es el mismo
4. El efecto de los fungicidas de la Compaa I es igual a efecto de los
fungicidas de la compaa II.
5. El efecto de los Fungicidas de la compaa I es el mismo.
6. El efecto de los fungicidas de la compaa II es el mismo.
7. El efecto de las nuevas formulaciones de la compaa II es el mismo.

El programa en SAS para resolver este problema es el siguiente:


datafungi;
inputtrat$;
dobloq=1to6;
inputobs@@;
output;
end;
cards;
A889775
B161924221919
C141614131413
D101112873
E871132
F883337
G766644
H121991195
procglm;
classtratbloq;
modelobstratbloq;
*TRATAMIENTOSABCDEFGH;
contrast'AVSBCDEFGH'TRAT+71111111;
contrast'BCVSDEFGH'TRAT0+5+522222;
contrast'BVSC'TRAT0+1100000;
contrast'DHVSEFG'TRAT00032223;
contrast'DVSH'TRAT000+10001;
contrast'EVSFG'TRAT0000+2110;
contrast'FVSG'TRAT00000+110;
run;

Programa 18 Diseo Factorial

Se tienen, en un diseo cuadro latino cuatro tratamientos para probar el efecto de


fertilizantes inorgnicos y orgnicos sobre el rendimiento de una variedad de
papa.
Los tratamientos son:
Tratamiento 1.- Sangre (n0); superfosfato (P0): (n0P0)
Tratamiento 2.- Sulfato de amonio (n1); superfosfato (P0): (n1P0)
Tratamiento 3.- Sulfato de amonio (n1); harina de hueso (P1): (n1P1)
Tratamiento 4.- Sangre (n0); harina de hueso (P1): (n0P1)
Note que la asignacin de niveles a los factores es arbitraria.

Tenemos entonces dos factores a dos niveles:


Sangre (n0)
Sulfato de amonio (n1)
Superfosfato (P0)
Harina de hueso (P1)
El diseo quedo como sigue:
TRAT

OBS
I

II

III

IV

II

III

IV

645

667

670

787

II

II

752

637

655

576

III

III

642

627

686

575

IV

IV

621

762

596

660

datas;
*Lasvariablestratrepresentatratamientos,nyplosdiferentes
niveles
inputhilerascolumtratnpobs;
cards;
II401645
III311667
IIII210670
IIV100787
III100752
IIII210637
IIIII311655
IIIV401576
IIII311642
IIIII401627
IIIIII100686
IIIIV210575
IVI210621
IVII100762
IVIII401596
IVIV311660
PROCPRINT;
*sehaceelclculodelanlisisdevarianzadeldiseocuadrolatino
PROCGLM;
CLASSEShilerascolumtrat;

MODELobs=hilerascolumtrat;
run;
*sehaceelclculousandofactoriales
*eldiseoanteriorserespetasoloenelmodeloseponenlos
*diferentesnivelesdepynysusinteracciones.
procglm;
classeshilerascolumtrat;
modelobs=npn*p;
run;

Tambin el factorial se puede escribir como:


procglm;
classeshilerascolumtrat;
modelobs=n|p;
run;

De esta forma la computadora tomara los valores de n, de p y la interaccin entre


ellos.

Programa 19 Diseo Jerrquico

En un curso de capacitacin reciente los miembros de las clase recibieron, para


probar sus conocimientos, un problema final. Cada miembro de la clase fue a la
planta y mont un experimento de acuerdo a las tcnicas discutidas en clase. El
Ingeniero Fernndez se propuso estudiar las series de datos de soportes de
ctodos de cristal de cinco diferentes mquinas. Cada mquina (M) tiene cuatro
cabezas (H) en las cuales el cristal (vidrio) se forma, el Ingeniero decidi tomar 4
observaciones por celda, emple un Diseo Completamente al Azar para probar
que las series de lecturas no presentaban problema.
Los datos se presentan en la tabla:

Cabeza

Mquina A

Mquina B

Mquina C

Mquina D

Mquina E

10

11

12

13

10

11

10

10

10

De la tabla:
Mquinas i= 1,..., 5
Cabezas j= 1 ,...,4
Repeticiones k=1 ,...,4
El ejemplo anterior se puede analizar como un Diseo Jerrquico , ya que
cabezas estn anidadas dentro de mquinas.
datas;
inputcabezamaq$obs;
cards;
1A6
1A2
1A0
1A8
1B10
1B9
1B7
1B12
1C0
1C0
1C5
1C5
1D11
1D0
1D6
1D4
1E1
1E4
1E7
1E9
2A13
2A3
2A9

2A8
2B2
2B1
2B1
2B10
2C10
2C11
2C6
2C7
2D5
2D10
2D8
2D3
2E6
2E7
2E0
2E3
3A1
3A10
3A0
3A6
3B4
3B1
3B7
3B9
3C8
3C5
3C0
3C7
3D1
3D8
3D9
3D4
3E3
3E0
3E2
3E2
4A7
4A4
4A7
4A9
4B0
4B3
4B4
4B1
4C7
4C2
4C5
4C4
4D0
4D8
4D6
4D5
4E3

4E7
4E4
4E0
procprint;
PROCGLM;
CLASSmaqcabeza;
modelobs=maq|cabeza;
run;
PROCGLM;
CLASSmaqcabeza;
modelobs=maqmaq(cabeza);
run;
procsort;bymaq;
PROCGLM;
CLASSmaqcabeza;
modelobs=maqmaq(cabeza)/alpha=.1;
bymaq;
run;

Вам также может понравиться