Sunteți pe pagina 1din 43

CLASE PRCTICA

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 (por ejemplo una misma variable est definida cmo Alfanumrica de 5 posiciones en un dataset y de 8 posiciones en otro) se requiere la opcin FORCE al final de la instruccin. APPEND <FORCE>; BASE=<dataset> DATA=<dataset>

PROC

proc append base=Alumnos_dima data=Alumnos_suelos; run;

Instruccin SET
Permite a partir de uno o ms conjuntos de datos crear

uno nuevo. La instruccin SET sigue siempre a la instruccin DATA y es posible escribir instrucciones adicionales antes de que se agreguen al nuevo conjunto de datos. SINTAXIS: DATA nombre del nuevo conjunto de datos; SET nombre del viejo conjunto de datos; Instrucciones adicionales de programacin;

Instruccin SET
EJEMPLO:

DATA subset1; SET dos;

PROC PRINT; RUN;


Aqu se genera un nuevo conjunto de datos con nombre

subset y contiene todas las observaciones del conjunto dos.


instruccin DATA y tener los subconjuntos necesarios.

Esta secuencia se puede repetir cambiando el nombre en la

Programa en SAS
data alumnos_dima; input matricula nombre $ edad altura; cards; 1 juan 23 1.80 2 maria 22 1.50 3 luis 25 1.20 4 omar 32 1.65 run;
data Alumnos1; set alumnos_dima; run;

data Alumnos1; set alumnos_dima; obs=joven; run;

IF/THEN/ELSE
El bloque IF/THEN/ELSE nos permite ejecutar sentencias en modo

condicional, la sintaxis de este bloque es:

IF (si) <condicin> THEN (entonces) <accin1>; ELSE <accin2>;

IF (si) <condicin> THEN (entonces) <accin1>; ELSE IF (si) <condicin> THEN (entonces) <accin2>; ELSE IF (si) <condicin> THEN (entonces) <accin3>; ELSE IF (si) <condicin> THEN (entonces) <accinN>; ELSE <accionN+1>;
data Alumnos1; set Alumnos1; if edad>25 then obs=viejo'; else obs=joven; run; DATA subset1; SET dos; IF sexo = F THEN delete; PROC PRINT; RUN;

KEEP y DROP
KEEP selecciona las variables que deseamos que

formen parte de nuestro dataset.


DROP eliminamos las variables que no deseamos que

aparezcan.
data Alumnos1; set Alumnos1; keep nombre obs; run;

Instruccin MERGE
Combina observaciones de dos o ms conjuntos de datos. En su

forma ms simple combina observaciones una por una. SINTAXIS: DATA nombre del nuevo conjunto de datos; MERGE lista de conjuntos de datos; By campo comn;
EJEMPLO
Subset 3 y subset4 son los dos conjuntos que se van a unir en el nuevo conjunto llamado Tres e incluye las variables de ambos conjuntos.

DATA Tres; MERGE subset3 subset4; PROC PRINT; RUN;

Ejemplo
Alumnos_irrigacion Matricula Nombre Calificacion Dierecciones_irrigacion Matricula Direccion Telefono

1
2 3 4

Jose
Maria Luis Pedro

10
9.6 8 7

1
2 3

chapingo1
Chapingo2 Chapingo3

10292823
92820201 8902092

Alumnos_completos_d Matricula 1 Nombre Jose Calificacion Direccion 10 chapingo1 Telefono 10292823

Programa SAS
proc sort data=Alumnos_datos; by matricula; run; data resultado; merge Alumnos_dima Alumnos_datos; by matricula; run;

data alumnos_datos; input matricula direccion $9. tel $; cards; 1 chapingo1 5957389 4 chapingo2 5957386 2 cahpingo3 5957385 run;

Ejercicio 3
1. Introducir la siguiente tabla en un archivo de

SAS llamado salario


Id 1 2 3 4 5 6 7 8 9 10 Operador Joan Slvia Jose Pedro Anna David Cristina Marta Magda Carlos Sexo Hombre Mujer Hombre Hombre Mujer Hombre Mujer Mujer Mujer Hombre Sueldo 10.000 11.000 12.000 11.000 12.000 12.000 10.000 13.000 11.000 13.000

Ejercicio 3
Crear un dataset (nuevosop) con los siguientes operadores y

agregar DataSet Salarios.


Id 13 12 11 Operador Luis Laura Javier Sexo Hombre Mujer Hombre Sueldo anual (en $) 13.000 10.000 11.000

Agregar una columna nivel(variable de clasificacin) en

el DataSet Salarios y colocar los siguientes valores :


Sueldo mayor a $12000 colocar el valor 2 Sueldo menor o igual a $12000 colocar el valor 1

Ejercicio 3
Crear un nuevo dataset (salario_complento) con la siguiente

informacin. Complementar el dataset salarios con la antigedad de cada operador.


Id Antiguedad 5 10 4 13 3 13 2 12 1 12 6 10 7 10 8 10 9 13 10 11 11 11 12 13 13 13

Ejercicio 3
Utilizando la funcion print mostrar la suma de los

salarios por nivel1.


Utilizando la funcion print mostrar la suma de los

salarios por sexo.

Programa en SAS
DATA salarios; INPUT id operador $ sexo $ sueldo; CARDS; 1 Joan Hombre 10000 2 Silvia Mujer 11000 3 Jose Hombre 12000 4 Pedro Hombre 11000 5 Anna Mujer 12000 6 David Hombre 12000 7 Cristina Mujer 10000 8 Marta Mujer 13000 9 Magda Mujer 11000 10 Carlos Hombre 13000 PROC PRINT DATA=salarios; RUN;

Programa en SAS
DATA nuevos_operadores; INPUT id operador $ sexo $ sueldo; CARDS; 13 Luis Hombre 13000 12 Laura Mujer 10000 11 Javier Hombre 10000 run; proc append base=Salarios data=Nuevos_operadores; run; data Salarios; set salarios; if sueldo>12000 then nivel=2; else nivel=1; run; data antiguedad; proc sort data=Salarios; input id ant; by id; cards; run; 5 10 4 13 proc sort data=Antiguedad; 3 13 by id; 2 12 run; 1 12 6 10 data salario_completo; 7 10 merge Salarios Antiguedad; 8 10 by id; 9 13 run; 10 11 11 11 proc print data=Salario_completo; 12 13 run; 13 13 run;

Estadstica descriptiva
La Estadstica descriptiva registra los datos en tablas y los representa en grficos. Calcula los parmetros estadsticos (medidas de centralizacin, medidas de posicin y de dispersin), que describen el conjunto estudiado. La distribucin de frecuencias o tabla de frecuencias es una ordenacin en forma de tabla de los datos estadsticos, asignando a cada dato su frecuencia correspondiente

La frecuencia absoluta es el nmero de veces que aparece un determinado valor en un estudio estadstico
La suma de las frecuencias absolutas es igual al nmero total de datos, que se representa por N. La frecuencia relativa es el cociente entre la frecuencia absoluta de un determinado valor y el nmero total de datos. Se puede expresar en tantos por ciento y se representa por ni.

8068 este nmero slo apareci 25 veces en los 3.4 millones de contraseas analizadas, lo que equivale al 0.000744% de la muestra. 10 mil combinaciones posibles

PROC FREQ
Cuenta valores y genera tablas de frecuencias simples, dobles o ms

entradas.

Formato: PROC FREQ opciones; <instrucciones generales> opciones DATA = data set selecciona el data set que se ordenar Instrucciones generales del procedimiento FREQ. TABLES <var1> * <var2> * ... /opciones;
PROC FREQ DATA=misdatos.salario_completo ; table sueldo nivel ant; RUN; PROC FREQ DATA=misdatos.salario_completo ; table sueldo*ant; RUN;

Salida

CMO USAR DATOS GRABADOS EN ARCHIVOS EXTERNOS


Instruccin infile
Para leer datos que estn almacenados en el disco duro, escritos en otro programa como por ejemplo Excel, se pone entre la instruccin data e input la instruccin infile. SINTAXIS: DATA dos; INFILE <unidad de disco>\carpeta\archivo.txt; INPUT lista de variables; Para utilizar infile, los datos deben tener cierto orden, en este caso el usuario debe saber que la primera columna de datos corresponde a la variable tratamientos, y as sucesivamente. Teniendo esto en cuenta el investigador seala el nombre y orden de las variables en el input.

OTRA VARIANTE: Es utilizando copiar en Excel y posteriormente abrir SAS y despus de cards dar la instruccin pegar.

OTRAS OPCIONES DE LA INSTRUCCIN INFILE


DELIMITER Utilizado para especificar un dato de carcter que

delimita otro que est en blanco . Ej: DLM=',' EXPANDTABS Usado para datos delimitados con TAB. LRECL Especifica el largo del registro de entrada. En Windows, LRECL se requiere para entrada de datos de longitud mayores a 256 caracteres. MISSOVER Previene que el prximo registro a llenar es un dato perdido.
Ejemplo: Leer un fichero delimitado por TAB con registros de

longitud superior a 5000 caracteres, iniciando con la lnea 10 y finalizando con la linea 100, un total de 91 observaciones. INFILE 'filename' EXPANDTABS LRECL=5000 MISSOVER FIRSTOBS=10 OBS=100;

CMO CARGAR DATOS DE EXCEL


Los datos de excel deben guardarse de la siguiente forma: Dar click en archivo Seleccionar la opcin guardar como Despus de definir y escribir el nombre que le pondr a su archivo, seleccionar la opcin: texto (delimitado por tabulaciones). Finalmente dar click en guardar

Programa en SAS
data rpmfuerza; infile 'C:\pm.prn'; input rpm fuerza; run; data productividad; infile 'C:\rpmfuerza.csv' DLM=','; input rpm fuerza; run;

CMO LIMITAR EL NMERO DE OBSERVACIONES AL LEER DESDE ARCHIVOS EXTERNOS


Se aplica cuando tiene datos grabados en algn disco pero

hay observaciones que no interesan y prefiere no incorporarlos en su programa. Para lograr esto se utilizan dos instrucciones: firstobs y obs.
firstobs obs Ej: no le interesa leer las cinco primeras Ej. El programa lea desde el inicio pero observaciones, por lo que instruye al slo hasta la observacin 20 de los datos programa para que la lectura se inicie a del archivo partir de la observacin 6. data productividad2; infile 'C:\productividad.csv' firstobs = 6 DLM=',' ;
input id nombre $ categoria $ productividad;

data productividad2; infile 'C:\productividad.csv' obs = 6 DLM=',' ;


input id nombre $ categoria $ productividad;

CMO LIMITAR EL NMERO DE OBSERVACIONES AL LEER DESDE ARCHIVOS EXTERNOS


Tambin pueden utilizarse los dos enunciados en una sola

instruccin. Ej: Se necesita que slo se lean los datos del archivo entre la observacin 5 y la observacin 10.
data rpmfuerza1; infile 'C:\rpm.csv' DLM=',' firstobs=5 obs=10; input rpm fuerza t; run;

IMPORTAR DATOS A SAS

Nota: importar el archivo de estatura de senadores.

Ejercicio 4
Utilizando el archivo de senadores.xls obtener la siguiente informacin:
Hacer una tabla de frecuencia de estaturas de los senadores. Utilizando la tabla de frecuencia conteste las siguientes preguntas:
1. 2.

3. 4.

5. 6. 7.

Qu porcentaje senadores miden 1.75m? Cul es la frecuencia relativa de los senadores que miden 1.80m? Cantidad de senadores que miden 1.5 m? Explique por que la frecuencia acumulada de senadores que mide 1.8 es de 100%? Frecuencia y frecuencia relativa de senadores hombre y mujer? Cul es la frecuencia relativa de las senadoras que miden 1.5? Frecuencia de senadores que miden 1.6m?

Programa en SAS

proc freq data=misdatos.senadores; table estatura; run;

Parmetros estadsticos
Un parmetro estadstico es un nmero que se

obtiene a partir de los datos de una distribucin estadstica.


Los parmetros estadsticos sirven para sintetizar la

informacin dada por una tabla o por una grfica.


Hay tres tipos parmetros estadsticos:
De centralizacin. De posicin. De dispersin.

Medidas de centralizacin
Media aritmtica: Es el valor promedio de la

distribucin.
Mediana: Es la puntacin de la escala que separa la

mitad superior de la distribucin y la inferior, es decir divide la serie de datos en dos partes iguales.
Moda: Es el valor que ms se repite en una

distribucin.

Medidas de posicin
Las medidas de posicin dividen un conjunto de datos en

grupos con el mismo nmero de individuos. datos estn ordenados de menor a mayor.

Para calcular las medidas de posicin es necesario que los


Cuantiles:
Cuartiles : Dividen la serie de datos en cuatro partes

iguales.

Deciles: Dividen la serie de datos en diez partes iguales. Percentiles: Dividen la serie de datos en cien partes iguales.

Medidas de dispersin
Las medidas de dispersin nos informan sobre cunto se alejan

del centro los valores de la distribucin.

Las medidas de dispersin son:

Rango o recorrido: Es la diferencia entre el mayor y el menor

de los datos de una distribucin estadstica.

Desviacin media: Es la media aritmtica de los valores

absolutos de las desviaciones respecto a la media.


desviaciones respecto a la media.

Varianza: Es la media aritmtica del cuadrado de las

Desviacin tpica : Es la raz cuadrada de la varianza.

Sentencia PROC MEANS


Determina la media, desviacin estndar, mnimo y

mximo de un conjunto de datos.


PROC MEANS DATA=nombre del programa; RUN;

proc means data=salarios; run;

proc means data=salarios; output out=resultado; proc print data=resultado; run;

SALIDA (OUTPUT)

Instruccin VAR
Se utiliza en diferentes procedimientos para indicar

sobre que variable quiere que se haga el anlisis que se indica en el programa. Sintaxis: VAR variable; Ejemplos:
Ejemplo: PROC MEANS DATA=salarios; VAR salario; RUN;

Instruccin BY
Se utiliza en diferentes procedimientos para indicar

como quiere que se haga el anlisis que se indica en el programa. Sintaxis: BY variable; Ejemplo:
proc means data=salarios; var salario; by sexo; run; proc means data=salarios; var salario; by sexo; where sexo='Hombre'; run; proc means data=salarios; var salario; class sexo; run;

Nota: La instruccin CLASS es optativa y es muy similar a la opcin BY, pero la diferencia es que con la primera los resultados en la ventana OUTPUT son mucho ms compactos.

SENTENCIA PARA DIFERENTES ESTADISTICOS


proc means max min mean std range kurtosis data=salarios maxdec=2; var salario; by sexo; where sexo='Hombre'; run;
PROC MEANS permite realizar diferentes clculos relacionados con los parmetros de tendencia central y medida de dispersin
MEAN es el valor medio MEDIAN es la mediana STD es la desviacin estndar STDERR es el error estndar RANGE es el rango proc means max min mean std range data=salarios; var salario; output out=resultado max=maximo mean=media; proc print data=resultado; Run;

Los estadsticos a incluir en el proc means y en el dataset_salida mediante la instruccin OUTPUT son:

N Nmero de observaciones no faltantes. NMISS Nmero de observaciones faltantes. NOBS Nmero de observaciones. MEAN Media. STDMEAN Desviacin estndar de la media. SUM Suma de los valores. STD Desviacin estndar. VAR Varianza. CV Coeficiente de variacin. USS Suma de cuadrados no corregida. CSS Suma de cuadrados corregida. SKEWNESS Asimetra. KURTOSIS Kurtosis. SUMWGT Suma de los pesos de los valores. MAX Valor mximo. MIN Valor mnimo. RANGE Rango de valores. Q3 Percentil del 75% (3er Cuartil).

Los estadsticos a incluir en el proc means y en el dataset_salida mediante la instruccin OUTPUT son:

MEDIAN Mediana. Q1 Percentil del 25% (1er Cuartil). QRANGE Diferencia entre Q3 y Q1. P1 Percentil 1. P5 Percentil 5. P10 Percentil 10. P90 Percentil 90. P95 Percentil 95. P99 Percentil 99. T t-Student para la hiptesis nula que la media de la variable es igual a cero. PROBT Probabilidad que el valor absoluto de t sea superior a T. MSIGN Estadstico de signo. PROBM Probabilidad que el valor absoluto del estadstico de signo sea superior a MSIGN. SIGNRANK Estadstico de signo del rango. PROBS Probabilidad que el valor absoluto del estadstico de signo del rango sea superior a SIGNRANK centrado.

HTML
Podemos mejorar nuestras salidas obteniendo resultados

en formato HTML. Para ello tendremos que cambiar las preferencias:

Ejemplos de PROC MEANS


Altura mxima y mnima de los senadores.
Promedio de altura de hombre y mujeres. Desviacin estndar, Varianza y Coeficiente de

variacin de la estatura de las senadoras.


Max min Mean Std var cv

Ejercicio 5
Utilizando el archivo de Cosecha.xls obtener la siguiente informacin:
1. 2. 3.

Promedio de la cosecha en el ao 2004 del estado de Nuevo Leon,. Promedio de la cosecha en el estado de Jalisco del 2005 al 2008. Cantidad mxima cultivada de avena en el estado de Jalisco del 2004 al 2008. Cantidad mxima, mnima, promedio y desviacin estndar de la cosecha de alfalfa en los aos 2004 y 2005. Cosecha total de los estados de Jalisco y Nuevo Leon en 2009. Cosecha total por estado y cultivo. Superficie cosecha por ao en los 2 estado.

4.

5. 6. 7.

S-ar putea să vă placă și