2011_cap_02_01_proc_print

Upload: igor-s11

Post on 05-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/2/2019 2011_Cap_02_01_PROC_PRINT

    1/6

    1

    AlgunosProcedimientosdelmduloSAS/BASEUtilidadessobrearchivos

    PROCPRINTElprocedimiento PRINTseutilizaparagenerarinformesdelistassencillos.Permiteutilizarttulos

    ynotasapiedepgina,cabecerasdescriptivasyvaloresdedatosconformatos.Susintaxises,

    PROC PRINT DATA=archivo ; ;

    PresentaenlapantalladeOUTPUTunlistadodelosvaloresdelosdatos.

    Lasopcionesmsimportantesson:

    UNIFORM Fijaelanchodelascolumnasentodaslaspginas.

    LABEL Imprimelasetiquetasdelasvariablesenvezdelosnombresdeellas.

    NOOBS Suprimeelnmerodeobservacin.

    DOUBLE Imprimeadobleespacio,

    ROUND Redondea los nmerosde la salida ados cifras decimales en las variables

    para las que se ha pedido la suma ( ver SUM en especificaciones de

    sentencia).

    Lasespecificacionesdesentenciasmsimportantesson:

    IDvariable; Utiliza la variable como identificacin del caso en vez del nmero deobservacin.

    VARlistadevariables; Presenta lasvariablesseleccionadasyenelordenenquedebenaparecerenelinforme.

    SUMlistavariables; Creauna variable sumapor cada variableque apareceen la lista. La variablesumacreadacontienelasumadelavariable.EnconjuncinconBY,imprimelos

    subtotalesgeneradosporBY.

    SUMBYlistavariables: En combinacin con BY permite imprimir slo los subtotales de la lista devariables.

    PAGEBYlistavariables; EmpiezaaimprimirenunapginanuevalosgruposgeneradosporBY.BYlistavariables; Agrupa lassalidasenfuncindelosgruposgeneradosporlasvaloresdelalista

    devariables.

  • 8/2/2019 2011_Cap_02_01_PROC_PRINT

    2/6

    2

    EjemplosSupongamosquehayquegenerarunapresentacinsimpledeunconjuntodedatos.Los

    datosestn

    contenidos

    en

    el

    conjunto

    de

    datos

    SAS

    (Set

    Data)

    Empleados

    yla

    descripcin

    deesteficheroes:

    NombredeVariable Descripcin

    catlab Categoralaboral

    educ Niveleducativo

    expprev Experienciaprevia(meses)

    fechnac Fechadenacimiento

    id Cdigodeempleado

    minor_a Clasificacindeminoras

    salario Salarioactual

    salini

    Salarioinicial

    sexo Sexo

    tiempemp Mesesdesdeelcontrato

    Enesteconjuntodeejemplossesupondrquesehacreadolalibrera'DOCU'.

    Ejemplo1PROCPRINTDATA=DOCU.EMPLEADOS;

    RUN;

    Ejemplo2PROCPRINTDATA=DOCU.EMPLEADOS;

    VAR catlab id sexo;

    RUN;

    Ejemplo3PROCPRINTDATA=DOCU.EMPLEADOS;

    ID id;

    VAR catlab id sexo;

    RUN;

    Ejemplo4PROCPRINTDATA=DOCU.EMPLEADOS;

    TITLE'Datos de los empleados';

    TITLE2 '______________________';

    ID id;

    VAR catlab id sexo;

    RUN;

  • 8/2/2019 2011_Cap_02_01_PROC_PRINT

    3/6

    3

    Ejemplo5PROCPRINTDATA=DOCU.EMPLEADOS;

    TITLE'Datos de los empleados';

    TITLE2 '______________________';

    ID id;

    VAR catlab

    educ

    expprev

    fechnac

    id

    minor_a

    salario

    salini

    sexotiempemp;

    RUN;

    Ejemplo6PROCPRINTLABELDATA=DOCU.EMPLEADOS;

    TITLE'Datos de los empleados';

    TITLE2 '______________________';

    ID id;

    VAR catlab

    educexpprev

    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;

  • 8/2/2019 2011_Cap_02_01_PROC_PRINT

    4/6

    4

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

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

    fechnac DDMMYY10.;

    RUN;

  • 8/2/2019 2011_Cap_02_01_PROC_PRINT

    5/6

    5

    Ejemplo9PROCPRINTLABEL 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 EUROX7.

    fechnac DDMMYY10.;

    RUN;

    Ejemplo10data uno;

    do i=1to10;

    x=5+normal(i)*2;

    y=3*ranexp(i);

    output uno;

    end;

    procprintdata=uno round;id i;sum x;

    run;

    presentaen

    la

    ventana

    OUTPUT

    los

    valores

    de

    las

    variables

    simuladas

    x(redondeada

    a2

    decimales)ey,ylosvaloresrespectivosdei,ascomolasumadelosvaloresdex.

  • 8/2/2019 2011_Cap_02_01_PROC_PRINT

    6/6

    6

    Ejemplo11a) El fichero censo.asc situado en el subdirectorio '\sas' con informacin relativa a la

    poblacinmasculina

    yfemenina

    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,ladesviacintpica,elmximoyelmnimodelapoblacintotalydelapoblacinporsexo.

    d) Calcularlamediayladesviacintpicadelapoblacintotalyladensidaddepoblacinporregiones.

    Guardar

    la

    salida

    en

    un

    nuevo

    conjunto

    de

    datos

    SAS

    llamado

    CENS02.

    Imprimir

    lasobservacionesregionalesenCENS02.

    e) Realizar un diagrama de tallo y hojas y calcular algn estadstico univariante de ladensidadusandolaprovinciacomovariabledeidentificacin.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';

    procprintnoobs;

    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)