You are on page 1of 6

AlgunosProcedimientosdelmduloSAS/BASE

Utilidadessobrearchivos PROCPRINT ElprocedimientoPRINTseutilizaparagenerarinformesdelistassencillos.Permiteutilizarttulos ynotasapiedepgina,cabecerasdescriptivasyvaloresdedatosconformatos.Susintaxises, PROC PRINT DATA=archivo <opciones>; <especificacin sentencias>; PresentaenlapantalladeOUTPUTunlistadodelosvaloresdelosdatos. Lasopcionesmsimportantesson: UNIFORM LABEL NOOBS DOUBLE ROUND Fijaelanchodelascolumnasentodaslaspginas. Imprimelasetiquetasdelasvariablesenvezdelosnombresdeellas. Suprimeelnmerodeobservacin. Imprimeadobleespacio, Redondea los nmeros de la salida a dos cifras decimales en las variables para las que se ha pedido la suma ( ver SUM en especificaciones de sentencia).

Lasespecificacionesdesentenciasmsimportantesson: IDvariable; VARlistadevariables; SUMlistavariables; Utiliza la variable como identificacin del caso en vez del nmero de observacin. Presentalasvariablesseleccionadasyenelordenenquedebenaparecerenel informe. Crea una variable suma por cada variable que aparece en la lista. La variable sumacreadacontienelasumadelavariable.EnconjuncinconBY,imprimelos subtotalesgeneradosporBY. En combinacin con BY permite imprimir slo los subtotales de la lista de variables. EmpiezaaimprimirenunapginanuevalosgruposgeneradosporBY. Agrupalassalidasenfuncindelosgruposgeneradosporlasvaloresdelalista devariables.

SUMBYlistavariables: PAGEBYlistavariables; BYlistavariables;

Ejemplos

Supongamosquehayquegenerarunapresentacinsimpledeunconjuntodedatos.Los datosestncontenidosenelconjuntodedatosSAS(SetData)Empleadosyladescripcin deesteficheroes:


NombredeVariable catlab educ expprev fechnac id minor_a salario salini sexo tiempemp Descripcin Categoralaboral Niveleducativo Experienciaprevia(meses) Fechadenacimiento Cdigodeempleado Clasificacindeminoras Salarioactual Salarioinicial Sexo Mesesdesdeelcontrato

Enesteconjuntodeejemplossesupondrquesehacreadolalibrera'DOCU'. Ejemplo1 PROC PRINT DATA=DOCU.EMPLEADOS; RUN; Ejemplo2 PROC PRINT DATA=DOCU.EMPLEADOS; VAR catlab id sexo; RUN; Ejemplo3 PROC PRINT DATA=DOCU.EMPLEADOS; ID id; VAR catlab id sexo; RUN; Ejemplo4 PROC PRINT DATA=DOCU.EMPLEADOS; TITLE 'Datos de los empleados'; TITLE2 '______________________'; ID id; VAR catlab id sexo; RUN;

Ejemplo5 PROC PRINT DATA=DOCU.EMPLEADOS; TITLE 'Datos de los empleados'; TITLE2 '______________________'; ID id; VAR catlab educ expprev fechnac id minor_a salario salini sexo tiempemp; RUN; Ejemplo6 PROC PRINT LABEL DATA=DOCU.EMPLEADOS; TITLE 'Datos de los empleados'; TITLE2 '______________________'; ID id; VAR catlab educ expprev fechnac id minor_a salario salini sexo tiempemp; LABEL catlab= 'Categora Laboral' educ= 'Nivel educativo' expprev= 'Experiencia previa' fechnac= 'Fecha de nacimiento' minor_a= 'Tipo de minora' salario= 'Salario actual' salini= 'Salario inicial' sexo= 'Sexo' tiempemp= 'Tiempo en la empresa'; FORMAT salario salini DOLLAR7.; RUN;

Ejemplo7
PROC PRINT LABEL DATA=DOCU.EMPLEADOS; TITLE 'Datos de los empleados'; TITLE2 '______________________'; ID id; VAR catlab educ expprev fechnac id minor_a salario salini sexo tiempemp; LABEL catlab = 'Categora Laboral' educ = 'Nivel educativo' expprev= 'Experiencia previa' fechnac = 'Fecha de nacimiento' minor_a ='Tipo de minora' salario ='Salario actual' salini = 'Salario inicial' sexo = 'Sexo' tiempemp = 'Tiempo en la empresa'; FORMAT salario salini EURO7.; RUN;

Ejemplo8
PROC PRINT LABEL DATA=DOCU.EMPLEADOS; TITLE 'Datos de los empleados'; TITLE2 '______________________'; ID id; VAR catlab educ expprev fechnac salini sexo tiempemp; LABEL catlab='Categora Laboral' educ='Nivel educativo' expprev='Experiencia previa' fechnac='Fecha de nacimiento' minor_a='Tipo de minora' salario='Salario actual' salini='Salario inicial' sexo='Sexo' tiempemp='Tiempo en la empresa'; FORMAT salario salini EURO7. fechnac DDMMYY10.; RUN;

id

minor_a

salario

Ejemplo9
PROC PRINT LABEL DATA=DOCU.EMPLEADOS; TITLE 'Datos de los empleados'; TITLE2 '______________________'; ID id; VAR catlab educ expprev fechnac id minor_a salini sexo tiempemp; LABEL catlab='Categora Laboral' educ='Nivel educativo' expprev='Experiencia previa' fechnac='Fecha de minor_a='Tipo de minora'salario='Salario actual' salini='Salario inicial'sexo='Sexo' tiempemp='Tiempo en la empresa'; FORMAT salario salini EUROX7. fechnac DDMMYY10.; RUN;

salario

nacimiento'

Ejemplo10
data uno; do i=1 to 10; x=5+normal(i)*2; y=3*ranexp(i); output uno; end; proc print data=uno round;id i;sum x; run;

presenta en la ventana OUTPUT los valores de las variables simuladas x (redondeada a 2 decimales)ey,ylosvaloresrespectivosdei,ascomolasumadelosvaloresdex.

Ejemplo11 a) El fichero censo.asc situado en el subdirectorio '\sas' con informacin relativa a la poblacin masculina y femenina de las provincias espaolas. La primera variable de longitud2eselcdigodelaregin(RE),lasegundavariabledelongitud31eselnombre de la provincia (PROVIN), la tercera variable de longitud 7 es el nmero de varones (MALE),lacuartavariabledelongitud10eselnmerodemujeres(FEMALE)ylaquintay ltimavariabledelongitud10eselreadecadaprovincia(AREA). b) Calcular la poblacin total por provincia e imprimir el conjunto de SAS por regiones. ImprimirlapoblacintotaldecadareginusandoelPROCPRINT. c) Calcularladensidaddepoblacindecadaprovincia.Calculartambineltotal,lamedia,la desviacintpica,elmximoyelmnimodelapoblacintotalydelapoblacinporsexo. d) Calcularlamediayladesviacintpicadelapoblacintotalyladensidaddepoblacinpor regiones.GuardarlasalidaenunnuevoconjuntodedatosSASllamadoCENS02.Imprimir lasobservacionesregionalesenCENS02. e) Realizar un diagrama de tallo y hojas y calcular algn estadstico univariante de la densidadusandolaprovinciacomovariabledeidentificacin.Eliminarlaregindecdigo 18yvolveraejecutarelprograma. SOLUCION a)
data censo; infile 'F:\Curso_SAS_2010\EUE_2010\DATOS_SAS\Ficheros ASCII\censo.asc'; input re 1-2 provin $ 3-33 male 34-40 female 41-50 area 51-60; total=male+female; /* Clculo de la poblacin total por provincia */ run; title '1991 Censo de poblacion'; proc print noobs; by re; /* Imprime por regiones */ sumby re; /* Calcula la poblacin total por regiones */ sum total; /* Calcula la poblacin total. Suma toda la variable total*/; sum total; run;

b)

You might also like