Vous êtes sur la page 1sur 60

SAS

BASICO
Giampaolo Orlandoni M.
Josefa Ramoni P.

Instituto de Estadística Aplicada

Universidad de Los Andes


Venezuela
ESTADISTICA DESCRIPTIVA
PROCEDIMIENTOS SAS

• ESTADISTICA DESCRIPTIVA

• PROCEDIMIENTOS SAS:

1. PROC MEANS
2 PROC FREQ
2.
3. PROC UNIVARIATE
METODOLOGIA ESTADISTICA
1‐METODOLOGIA ESTADISTICA

2‐DATOS ESTADISTICOS
1.1‐CONCEPTO Y NATURALEZA.
1.2‐CLASIFICACION:  TEMPORALES,  ATEMPORALES 
1.3‐ESCALAS DE MEDIDA: NOMINAL, ORDINAL, INTERVALOS

3‐VARIABLES ESTADISTICAS
2.1‐VARIABLES CATEGORICAS O CUALITATIVAS
2.2‐VARIABLES CUANTITATIVAS: DISCRETAS, CONTINUAS

4‐ANALISIS DECRIPTIVO DE LOS DATOS ESTADISTICOS
3.1‐GRAFICOS: HISTOGRAMAS, CAJAS, TENDENCIA, DISPERSION
3 1‐DISTRIBUCION
3.1 DISTRIBUCION DE FRECUENCIAS. ABSOLUTA. RELATIVA.
DE FRECUENCIAS ABSOLUTA RELATIVA
3.2‐MEDIDAS DESCRIPTIVAS: 
1‐TENDENCIA CENTRAL 
2‐POSICION
3‐DISPERSION
4‐FORMA
5‐ASOCIACION
METODOLOGIA    ESTADISTICA
IDENTIFICACION DEL PROBLEMA

D OBTENCION DE DATOS
E
S PROCESAMIENTO Y SINTESIS DE DATOS
PROCESAMIENTO Y SINTESIS DE DATOS
C
R
I DATOS de la  POBLACION DATOS de la  MUESTRA
P Conjunto total de mediciones                         Subconjunto representativo de la
T de la característica del proceso                       población (grupo de mediciones)
I
V CARACTERISTICAS  POBLACIONALES CARACTERISTICAS MUESTRALES
A (PARAMETROS) (ESTIMADORES)
• Valores desconocidos de la Población • Función de la muestra
• Se estiman con base en muestras • Se infieren a la población

LA ESTADÍSTICA: 
•Estudia Fenómenos Aleatorios: Fenómenos parcialmente predecibles debido a
su variabilidad inherente.
•Identifica y Analiza la Variabilidad Inherente de los Fenómenos  Aleatorios.
•Proporciona métodos para recolectar, organizar, resumir y analizar información 
con fines descriptivos e inferenciales.
PROBLEMAS, INFORMACION Y DATOS ESTADISTICOS

REALIDAD INDISPENSABLE:
•Planificar la recolección de datos dentro del
UNIDADES EXPERIMENTALES
marco de las preguntas que deben contestarse.
MEDIDAS RELEVANTES
•Datos correctos y exactos, recopilados
mediante elaborados diseños muestrales, son
DATOS ESTADISTICOS inútiles si no p
permiten resolver las p
preguntas
g de
interés.
INFORMACION UTIL

PROCESO GENERADOR DE INFORMACION UTIL PARA LA TOMA DE DECISIONES Y


LA SOLUCION DE PROBLEMAS:
1. FORMULACION DEL PROBLEMA O PREGUNTAS QUE DEBEN RESOLVERSE
2. RECOPILAR DATOS RELATIVOS A LAS CUESTIONES PLANTEADAS
3. ORGANIZAR Y ANALIZAR LOS DATOS EN FORMA ADECUADA
1. ANALISIS GRAFICO
2. ANALISIS NUMERICO
DATOS ESTADISTICOS

•RESULTADO
SU O NUMERICO
U CO DE MEDIDAS
S SOBRE
SO UNIDADES
U S EXPERIMENTALES
S
•OBSERVACIONES DISPONIBLES PARA EL ANALISIS ESTADISTICO
•INFORMACION: ESTA BASADA EN DATOS. PERMITE RESOLVER PROBLEMAS

CLASIFICACION DE LOS DATOS:


1-DATOS TEMPORALES: SERIES CRONOLOGICAS
DATOS DE UN MISMO ELEMENTO EN DISTINTOS PERIODOS DE TIEMPO
EJEMPLO: PIB anual, Consumo
2-DATOS ATEMPORALES: MATRICES DE DATOS
DATOS DE DIFERENTES ELEMENTOS EN UN MISMO PERIODO DE TIEMPO
EJEMPLO: Carros

X1 X2 ... Xj ......... Xp
ESCALAS DE MEDIDA
1. NOMINAL MATRIZ  Xij
2 ORDINAL
2. de DATOS
3. INTERVALO
4. RELACION
ESCALAS DE MEDIDA
ESCALA CARACTERISTICAS EJEMPLOS MEDIDAS ESTADISTICAS

1.IDENTIFICACION Y CLASIFICACION DE UNIDADES 1.CLASIFICACION POR SEXO


2.CLASIFICACION  POZOS  1.PORCENTAJES
NOMINAL 2.LOS NUMEROS INDICAN LA CLASE O CATEGORIA.  
NO INDICAN CANTIDAD DE LA CARACTERISTICA DE  PETROLEROS  2.MODA
LAS UNIDADES
(PRODUCTIVO SECO)
(PRODUCTIVO,

1.ORDENAMIENTO Y POSICION RELATIVA DE LAS 
UNIDADES
2.INDICA SI UNA UNIDAD TIENE MAS O MENOS  1.FRACTILES
CANTIDAD DE LA CARACTERISITICA QUE OTRA
CANTIDAD DE LA CARACTERISITICA QUE OTRA  S ECONOMICA
1.CLASE O O SO
SOCIAL
ORDINAL UNIDAD 2.MEDIANA
2.CALIDAD DEL CRUDO:
3.NO INDICA LA MAGNITUD DE LAS DIFERENCIAS 
ENTRE LAS UNIDADES (PESADO, LIVIANO)
4.PERMITE MEDIR OPINIONES, ACTITUDES, 
PREFERENCIAS

1.MEDIA
1.LAS DIFERENCIAS ENTRE UNIDADES PUEDEN  2.RANGO
COMPARARSE.  1.TEMPERATURA
1 TEMPERATURA (F,
(F C) 3 VARIANZA
3.VARIANZA
INTERVALOS 2.OPINIONES
2.LAS DISTANCIAS IGUALES EN LA ESCALA  4.DESVIACION ESTANDAR
3.INDICES
REPRESENTAN VALORES IGUALES EN LA 
CARACTERISTICA QUE SE MIDE 5.COEFICIENTE CORRELACION
6.COEFICIENTE VARIACION
3 EL PUNTO CERO ES ARBITRARIO
3.EL PUNTO CERO ES ARBITRARIO
1.EL PUNTO CERO ES FIJO 1.EDAD
RELACION 2.LA RELACION ENTRE LOS VALORES DE LA ESCALA  2.INGRESO 1.MEDIA GEOMETRICA
SE PUEDE CALCULAR 3.COSTOS 2.COEFICIENTE  VARIACION
VARIABLE ESTADISTICA
•VA:
VA: REPRESENTA CARACTERISTICAS DE LOS ELEMENTOS QUE CONFORMAN
LA POBLACION O MUESTRA
•CLASIFICACION: CUALITATIVAS, CUANTITATIVAS

Variable Ejemplos Características Gráficos


•Bueno – Malo  •BARRAS
CUALITATIVA (Calidad Aparato, Servicio) •Atributos 
•SECTORES
CATEGÓRICA Pasa ‐ No pasa
•Pasa No pasa
•Defecto‐ No Defecto •Cualidades •MOSAICOS
•Color
•N. Pozos Perforados •Valores Enteros •BARRAS
CUANTITATIVA Nú D f A id F ll
•Número Defectos, Accidentes, Fallas
•MOSAICOS
DISCRETA •Nivel Educativo •Número Casos
•Categoría Profesional •ASOCIACION

p
•Temperatura HISTOGRAMA
•HISTOGRAMA
•Presión
•POLIGONO 
CUANTITATIVA •Tiempo,Edad
CONTINUA •Volumen de Crudo Extraído Valores  Reales •CAJAS
•Dureza TENDENCIA
•TENDENCIA
•Presión Arterial
•ASOCIACION
•Precios
8
VARIABLES DISCRETAS
DIAGRAMA de  BARRAS.     GRAFICOS DE SECTORES         (Carros.dat)

Frecuencia Frec. Acumulada


Cl
Class CIL Ab l t
Absoluta R l ti
Relativa Ab l t Relativa
Absoluta R l ti
1 4 104 0.689 104 0.689
2 6 30 0.199 134 0.887
3 8 17 0.113 151 1.000

PROCEDIMIENTO SAS

ANALYZE
VARIABLES CONTINUAS
HISTOGRAMA de FRECUENCIAS. DIAGRAMA de CAJA.
DISTRIBUCION de FRECUENCIAS (Carros.dat)

22
El Histograma indica la mezcla de tres poblaciones (origen)
19 20
El análisis debe hacerse por grupo de origen
El análisis debe hacerse por grupo de origen
PROCEDIMIENTO SAS

ANALYZE   VARIABLE DATA
 ONE VARIABLE ANALYSIS
ONE VARIABLE ANALYSIS

DISTRIBUCION DE FRECUENCIAS
Limite Limite Punto Frecuencia Frecuencia Acumulada
Clase Inferior Superior Medio Absoluta Relativa Absoluta Relativa
1 13.0 15.6 14.3 1 0.0067 1 0.0067
2 15.6 18.1 16.9 11 0.0733 12 0.0800
3 18.1 20.7 19.4 19 0.1267 31 0.2067
4 20.7 23.3 22.0 10 0.0667 41 0.2733
5 23.3 25.9 24.6 12 0.0800 53 0.3533
6 25 9
25.9 28 4
28.4 27 1
27.1 20 0 1333
0.1333 73 0 4867
0.4867
7 28.4 31.0 29.7 14 0.0933 87 0.5800
8 31.0 33.6 32.3 18 0.1200 105 0.7000
9 33.6 36.1 34.9 22 0.1467 127 0.8467
10 36.1 38.7 37.4 11 0.0733 138 0.9200
11 38 7
38.7 41 3
41.3 40 0
40.0 5 0 0333
0.0333 143 0 9533
0.9533
12 41.3 43.9 42.6 3 0.0200 146 0.9733
13 43.9 46.4 45.1 3 0.0200 149 0.9933
14 46.4 49.0 47.7 1 0.0067 150 1.0000
Total 150
DIAGRAMA DE CAJA (BOX Plot)
• Síntesis gráfica de los datos. Indica: ubicación, dispersión, asimetría
• Los lados de la caja representan el primer y tercer quartil Q1, Q3. La línea media de la
Los lados de la caja representan el primer y tercer quartil Q1, Q3. La línea media de la 
caja representa la mediana o segundo quartil Q2.
• Los valores máximo y el mínimo no outliers se grafican como puntos al final de las líneas
• Rango Intercuartil RI=(Q3 ‐
g ( Q1): medida de la dispersión del 50% central de los datos
) p

Min Valor No Outlier = Max[X(1), Q1-1.5(Q3-Q1)]

1.5(Q3-Q1)

Q1            Q1 = 25%          

X
Q2               RI = (Q3 ‐ Q1) Q2 = 50%             

Q3 Q3 = 75%

1.5(Q3 - Q1)

Max Valor No Outlier = Min[X(n), Q3+1.5(Q3-Q1)] 11


VALORES EXTREMOS (0, *)
GRAFICOS DE TENDENCIA
• Análisis de patrones y tendencias
• Visualiza el comportamiento de los datos en el tiempo
Visualiza el comportamiento de los datos en el tiempo

Tendencia creciente Tendencia decreciente Corrida de


proceso

Valores Ciclo Variabilidad creciente


anormales s
12
SINTESIS DESCRIPTIVA
DE LOS DATOS ESTADISTICOS

1-TENDENCIA CENTRAL
2-POSICION
3-DISPERSION
4-FORMA
5 ASOCIACION
5-ASOCIACION

GIAMPAOLO ORLANDONI MERLI. 2011


A‐GRAFICOS Y TABLAS
GRAFICOS  •UNIVARIANTES.  MULTIVARIANTES
•TABLAS DE FRECUENCIAS
TABLAS
•TABLAS CRUZADAS
B‐MEDIDAS DESCRIPTIVAS
ARITMETICA
•MEDIA ARITMETICA
•MEDIA
1. TENDENCIA CENTRAL •MEDIANA
•MODA

•MAXIMO
2. POSICION  •MINIMO
(ORDEN)
( , )
•CUANTILES (CUARTILES, PERCENTILES)

•RANGO, RANGO INTERCUARTILICO
3. DISPERSION
•VARIANZA, DESVIACION ESTÁNDAR
(VARIABILIDAD)
•COEFICIENTE DE VARIACION

•ASIMETRIA (SESGO)
4. FORMA
•CURTOSIS (ACHATAMIENTO)

•COVARIANZA
5. ASOCIACION
•CORRELACION 14
1-MEDIDAS DE TENDENCIA CENTRAL

Media Acotada 
Media Acotada Conjunto Total Datos
Conjunto Total Datos – Se elimina un porcentaje (5‐10%) de los 
Se elimina un porcentaje (5‐10%) de los
(Media  valores más altos y bajos del conjunto de 
– (%Menor + %Mayor)
Recortada)  datos (datos outliers)

Media 
Media G= ((X1
G X2 … Xn)1/n
X1*X2*…*Xn Escala de Medida No Lineal.
Geométrica  (G) Log(G) =(log(Xi))/n
15
2-MEDIDAS DE POSICION (MEDIDAS DE ORDEN)
3-MEDIDAS DE DISPERSION (VARIABILIDAD)
DESVIACION ESTANDAR (S)
Raíz cuadrada positiva de la Varianza. Medida de dispersión más común
•Raíz cuadrada positiva de la Varianza. Medida de dispersión más común
•Se expresa en las mismas unidades que la Variable Estadística.
•Estandariza los valores de la VE (VE  con media cero y desviación estándar 
unitaria)
unitaria)  Z (X μ) /σ ~  (0;1)
Z = (X –μ) /σ ~ (0;1)
•Permite calcular la proporción de datos contenido en cierto intervalo alrededor 
de la media:  El Intervalo (μ ± Kσ) contiene al menos (1‐1/K2),  K>1

COEFICIENTE DE VARIACIÓN: Medida de Dispersión Relativa


UNIDAD Media Desv Est CV (%)
1‐Comparación de muestras con distintas unidades de medida y diferentes promedios
Tiempo Espera Minutos 78.7 12.14 12.05
Salario Bs F 1000.0 215.35 21.53

2‐Comparación de muestras con las mismas unidades de medida, y diferentes promedios

Temperatura A °C 1100 225 20.45


Temperatura B °C 800 200 25.00
18
4-MEDIDAS DE FORMA

19
HISTOGRAMAS y FORMAS

NORMAL BIMODAL INTERVALO VACIO

ASIMETRIA POSITIVA ASIMETRIA NEGATIVA

UNIFORME DATOS OUTLIERS


AREAS BAJO LA CURVA NORMAL

µ-3 µ-2 µ- µ µ+ µ+2 µ+3


68 26%
68.26%
95.44%
99.73%

21
FORMA GENERAL DE LOS PROCEDIMENTOS SAS (PROC)

PROC (NOMBRE) DATA=LIBRERÍA.ARCHIVO


Í OPCIONES;

•BY =PARTICIÓN DEL CONJUNTO DE DATOS EN GRUPOS, DEFINIDOS


POR LAS VARIABLES LISTADAS EN BY.
BY
•CLASS =VARIABLES DE CLASIFICACIÓN EN EL ANÁLISIS.
•FREQ =VARIABLE QUE INDICA LA FRECUENCIA DE OCURRENCIA
•ID =VARIABLES INDICADORAS EN LA SALIDA DEL PROCEDIMIENTO.
•OUTPUT=SALIDA DE DATOS.
•VAR =VARIABLES EMPLEADAS POR EL PROCEDIMIENTO
•WEIGHT=VARIABLE PONDERACIÓN.
•FORMAT=ESPECIFICA EL FORMATO.
•LABEL =ETIQUETAS DESCRIPTIVAS CON NOMBRES DE VARIABLES.
•TITLE =‘TITULO’
PROC MEANS

PROC MEANS DATA=LIBRERÍA.ARCHIVO OPCIONES;


•BY VARIABLES;
•CLASS VARIABLES/OPCIONES;
FREQ
•FREQ VARIABLE;
•ID VARIABLES;
•WEIGHT VARIABLE;
;
•VAR VARIABLES
•WEIGHT VARIABLE;
•TYPES REQUEST;
•WAYS LIST;
•OUTPUT=OUT= ARCHIVO/OPCIONES;
PROC MEANS
EJEMPLO 1 3_1-Proc Means Notas.sas
Data Notas;
Input Nombre $ Sexo $ Status $ An $ Seccion $ Nota1 Nota2;
Datalines;
Alarcon F 2 97 A 90 87
Bravo M 1 98 A 92 97
Camacho M 2 98 B 81 71
Duran M 1 97 A 85 72
Espinoza F 1 98 B 89 80
Franco M 1 97 B 78 73
Garces F 2 97 A 82 91
Hernandez F 1 98 B 84 80
Montilla M 2 97 A 88 86
Navas M 1 97 B 91 93
;
Proc sort data=Notas; By Anio Status; run;
Proc print; run;

Proc
oc MEANS
S fw=6
6 d
data=Notas;
t ot s;
Class Anio;
Var Nota2; run;
PROC MEANS
EJEMPLO 2
Proc MEANS fw=6 data=Notas;
Class Status Anio;
Var
a Nota2;
ota ;
Output out=sumstat1 mean=NotaPromedio idgrp;
run;
Proc print data=sumstat1 noobs;
title1 'Notas '; run;

EJEMPLO 3
Proc MEANS fw=6 data=Notas Noprint;
Class Status Anio;
Var Nota2;
Output out=sumstat2 mean=NotaPromedio idgrp
(max(Nota2) obs out (Nombre)=MejorNota);
run;
P
Proc print
i t data=sumstat2
d t t t2 noobs;
b
title1 'Notas '; run;
3_1-ProcMeansNotas.sas
ANALISIS DE UN CASO

Estructura del Data Set  pacientes

Variable Descripción Tipo Valores Válidos


PACN Paciente Num Caracter Numerales
SEXO Género Caracter ‘M‘ , 'F'
VISITA Vi it Fecha
Visita F h MMDDYY10
MMDDYY10. F h válida
Fecha álid
HR Heart Rate Numérica 40 - 100
SBP Presión Sistólica Numérica 80 - 200
DBP Presión
es ó Diastólica
stó c Numérica
u é c 60 - 120
0
DX Código Diagnóstico Caracter 1 a 3 dígitos
AE Evento Adverso Caracter '0‘ , '1'
INPUT
libname clinica 'c:\DataSAS';
Data clinica.pacientes;
Infile 'c:\DataSAS\pacientes.txt' lrecl=30 truncover;
Input @1 PacNo $3.
$3 @4 Sexo $1
$1. @5 Visita mmddyy10
mmddyy10.
@15 HR 3. @18 SBP 3. @21 DBP 3. @24 Dx $3. @27 AE $1.;
PacN = "Paciente Num"
Sexo = "Genero"
Genero
Visita = "Fecha Visita"
HR = "Corazón Presión"
SBP = "Presión
Presión Sistólica
Sistólica"
DBP = "Presión Diastólica"
Dx = "Diagnóstico Código"
AE = "Evento Adverso?“ ;

Format visit mmddyy10.;


Proc Print data=clinica.pacientes;
run;
3_2-Clinica0.sas
001M11/11/1998 88140 80 10
002F11/13/1998 84120 78 X0
Archivo Datos 003X10/21/1998 68190100
004F01/01/1999101200120
31
5A
pacientes txt
pacientes.txt XX5M05/07/1998 68120 80 10
006 06/15/1999 72102 68 61
007M08/32/1998 88148102 0
M11/11/1998 90190100 0
008F08/08/1998210
/ / 70
009M09/25/1999 86240180 41
010f10/19/1999 40120 10
'c:\DataSAS\pacientes.txt' 011M13/13/1998 68300 20 41
012M10/12/98 60122 74 0
lrecl=30 truncover; 013208/23/1999 74108 64 1
014M02/02/1999 22130 90 1
002F11/13/1998 84120 78 X0
003M11/12/1999 58112 74 0
015F 82148 88 31
017F04/05/1999208 84 20
019M06/07/1999 58118 70 0
3_3-Clinica1.sas 123M15/12/1999 60
321F 900400200
10
51
020F99/99/9999 10 20 8 0
022M10/10/1999 48114 82 21
023f12/31/1998 22 34 78 0
024F11/09/199876 120 80 10
025M01/01/1999 74102 68 51
02 FNOTAVAIL NA 166106
027FNOTAVAIL 700
028F03/28/1998 66150 90 30
029M05/15/1998 41
006F07/07/1999 82148 84 10
PROC FREQ
Detección de Valores Inválidos

The FREQ Procedure

PROC FREQ DATA=PACIENTES;


DATA PACIENTES;
SEXO Frequency
TITLE "Frequencia"; 2 1
F 12
TABLES SEXO/NOCUM NOPERCENT;
NOPERCENT M 14
X 1
RUN;
f 2

Frequency Missing = 1
PROC FREQ

PROC FREQ DATA=LIBRERÍA.ARCHIVO OPCIONES;

•BY VARIABLES;
•EXACT ESTADÍSTICOS/OPCIONES;
OUTPUT ESTADÍSTICOS OUT=SAS-DATA
•OUTPUT OUT SAS DATA SET ;
•TABLES /OPCIONES;
•TEST ESTADÍSTICOS;
•WEIGHT VARIABLE;
RUN;
•RUN;
Proc FREQ y Proc FORMAT. Detectar Valores Inválidos
Género
PROC FORMAT;;
Sexo Frequency
VALUE $Sexo    'F','M' = 'Valido'
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
' '     = 'Missing'
Miscoded 4
OTHER   = 'Miscoded';
Valid 25
VALUE $DX    '001' ‐ '999'= 'Valido'
Frequency Missing = 1
' '          = 'Missing'
OTHER        = 'Miscoded';
Diagnóstico Código
VALUE $AE       '0','1' = 'Valido'
$ ' '' ' ' ld '
Dx Frequency
' '     = 'Missing'
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
OTHER  = 'Miscoded';
Miscoded 2
run;
Valid 21
Frequency Missing = 8
PROC FREQ DATA=Clinica.Pacientes;
TITLE "Uso de FORMATS"
TITLE "Uso de FORMATS"; Evento Adverso
E Ad
FORMAT Sexo  $Sexo. AE Frequency
DX      $DX. ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
AE
AE       $AE.;
$AE ; Miscoded 1
TABLES Sexo DX AE / NOCUM NOPERCENT;  Valid 29
run; Frequency Missing = 1
PROC PRINT con WHERE 
PROC PRINT DATA=clinica.pacientes;
DATA li i i t
WHERE Sexo not in ('F','M')
or VERIFY(DX,' 0123456789') ne 0
or AE not in (
('0'
0 ,'1');
1 );
TITLE "Lista de datos Inválidos";
ID PacN;
VAR Sexo DX AE; run;

Lista Datos Invalidos

PacN GENERO DX AE
002 F X 0
003 X 3 1
004 M 1 A
006 6 1
010 f 1 0
013 2 1
002 F X 0
023 f 0
Proc PRINT y WHERE
Lista de valores fuera de rango
PROC PRINT DATA=clinica.Pacientes;
WHERE HR NOT BETWEEN 40 AND 100 AND HR IS NOT MISSING
OR SBP NOT BETWEEN 80 AND 200 AND SBP IS NOT MISSING
OR DBP NOT BETWEEN 60 AND 120 AND DBP IS NOT MISSING;
TITLE "Valores fuera de rango";
ID PAcN;
;
VAR HR SBP DBP; run;

Valores Fuera de Rango


PACN HR SBP DBP
004 101 200 120
008 210 . .
009 86 240 180
010 . 40 120
011 68 300 20
014 22 130 90
017 208 . 84
321 900 400 200
020 10 20 8
023 22 34 78
DATA _NULL_ Data Step .  Valores fuera de rango
DATA _NULL_;
NULL ;
Infile 'C:\DataSAS\dat\pacientes.txt’;
FILE PRINT; ***Salida a Ventana Output;
Input @1 PacN $3. @4 Sexo $1.
@15 HR 3. @18 SBP 3. @21 DBP 3. ;
IF (HR LT 40 AND HR NE .) OR HR GT 100 THEN PUT PAcN= HR=;
IF (SBP LT 80 AND SBP NE .) OR SBP GT 200 THEN PUT PAcN= SBP=;
IF (DBP LT 60 AND DBP NE .)
) OR DBP GT 120 THEN PUT PAcN
PAcN= DBP
DBP=;
;

Lista Valores Fuera Rango


PAcN =004 HR= 101
PAcN =008 HR= 210
PAcN =009 SBP= 240
PAcN =009 DBP= 180
PAcN =010 SBP= 40
PAcN =011 SBP= 300
PAcN =011 DBP= 20
PAcN =014 HR= 22
PAcN =017 HR= 208
PAcN =321 HR= 900
PAcN =321 SBP= 400
PAcN =321 DBP= 200
PA N
PAcN =020
020 HR
HR= 10
PAcN =020 SBP= 20
PAcN =020 DBP= 8
PAcN =023 HR= 22
PAcN =023 SBP= 34
PROC MEANS
Verificación Outliers

PROC MEANS DATA= Pacientes N NMISS MIN MAX MAXDEC=1;


TITLE ‘Verificar
Verificar Variables Numéricas
Numéricas’;
;
VAR HR SBP DBP;
RUN;
Detectar Outliers mediante Desviación Estandar

Proc MEANS data=Clinica.Pacientes noprint;


var hr;
output out=means(drop=_type_ _freq_)
p ( p _ yp _ _ q_)
mean=m_hr std=s_hr ;
run;

proc print data=means; run;

%let n_sd
n sd = 2;
2;

data _null_;  set Clinica.Pacientes; Data Set MEANS


file print; 
print; if _n_ 
if n = 1 then set means;
1 then set means; m_hr s_hr
104.871 153.026
st = &n_sd*s_hr;
if hr lt (m_hr ‐ st) and hr ne .  Outlier:
or hr gt (m_hr
or hr gt (m hr + st) then put pacn
+ st) then put pacn = hr = ;
= hr = ;
run; PacN=321 HR=900
PROC MEANS
LIMPIANDO DATOS Y ELIMINANDO VARIABLES

Data Nuevo;

Set clinica.pacientes (keep=PacN Sexo HR SBP DBP);


IF sexo='M'
' ' or sexo ='F'
' ' or sexo ='m'
' ' or sexo ='f’;
'f
IF sexo ='F' or sexo ='f' THEN sexo='F' ;
Proc print data = nuevo;
run;
Data clinica.pacientes;
Infile 'c:\DataSAS\dat\pacientes.txt' lrecl=30 truncover;
Input @1 PacN $3.
$3 @4 Sexo $1.
$1 @5 Visita mmddyy10.
mmddyy10
@15 HR 3. @18 SBP 3. @21 DBP 3. @24 Dx $3. @27 AE $1.;

Data Nuevo;
Set clinica.pacientes (keep=PacN Sexo HR SBP DBP AE);
If sexo='M' or sexo ='F' or sexo ='m' or sexo ='f' ;
If sexo ='F' or sexo ='f' then sexo='F' ;

Data Nuevo2; set nuevo;


if AE ne '0' and AE ne '1' then delete ;
if HR='.' and SBP='.' and DBP='.' then delete;

Proc SORT DATA=Nuevo2; BY Sexo;


run;
Proc MEANS DATA=nuevo2 fw=6;;
By Sexo; Class AE;
VAR HR SBP DBP;
OUTPUT OUT=SalClinica1
MEAN=M HR M
MEAN=M_HR M_SBP
SBP M
M_DBP;
DBP; run;

Proc Print data = salclinica1; run;


PROC MEANS
ESTADISTICAS BASICAS
PROC MEANS PROC SUMMARY

PROC MEANS DATA= nuevo fw=6; * NOPRINT;


/*Equivalente a PROC SUMMARY DATA= nuevo; */
;
CLASS Sexo;
VAR HR SBP DBP;
OUTPUT OUT=SalClin1
MEAN=M_HR M_SBP M_DBP; run;
proc print data = salclin1; run;
Proc Means con BY en lugar de CLASS

PROC MEANS DATA=nuevo NOPRINT;

BY sexo;
VAR HR SBP DBP;
OUTPUT OUT=SalidaClin
MEAN=M_HR M_SBP M_DBP;
;
run;
proc print data = salidaClin;
run;
Proc MEANS: DS Segmentado por Sexo y AE
PROC MEANS DATA
DATA= nuevo fw
fw=6;
6; * NOPRINT;
CLASS Sexo AE;
VAR HR SBP DBP;
OUTPUT OUT=SalClin2
MEAN M HR M
MEAN=M_HR M_SBP
SBP M
M_DBP;
DBP run;
proc print data = salclin2; run;
La Variable _TYPE_
CLASS Sexo AE;

Class Variables Representación

Sexo AE Binario Decimal

0 0 00 0

0 1 01 1

1 0 10 2

1 1 11 3
Proc Means: Opción NWAY

PROC MEANS DATA= nuevo fw=6 NWAY;


CLASS Sexo AE;
VAR HR SBP DBP;
OUTPUT OUT=SalClin2
MEAN M HR M
MEAN=M_HR M_SBP
SBP M
M_DBP;
DBP run;
proc print data = salclin2; run;

Sexo AE _TYPE_ _FREQ_ M_HR M_SBP M_DBP


F 0 3 11 93 56
93.56 102 00
102.00 80.60
80 60
F 1 3 2 491.00 274.00 144.00
M 0 3 8 71.25 135.71 82.86
M 1 3 5 59.60 177.20 88.00
Proc Means: Estadísticas Seleccionadas

PROC MEANS DATA=nuevo2 fw=6;


CLASS Sexo;
VAR HR SBP DBP;
;
OUTPUT OUT=SalClin4
MEAN =M_HR M_SBP M_DBP
MAX =MAX_HR MAX_SBP MAX_DBP
MEDIAN =MED_HR MED_SBP MED_DBP;
RUN;

Proc Print data = salclin4; run;


Estadísticas Disponibles
Proc MEANS: WEIGHT
•Ejemplo de uso de WEIGHT con Proc MEANS. Un grupo de 20 personas estiman
el tamaño de un objeto que mide 30 cmcm. Cada persona se coloca a distancias
difentes del objeto. A medida que la distancia aumenta, las estimaciones se hacen
menos precisas.
•Medida de Precisión: recíproco
p de la distancia ((1/Distancia):
) asigna
g mayor
y p peso a
estimaciones hechas a distancias más cercanas del objeto.
•El DS Tamaño contiene estimación, distancia, precision para cada persona

•Data TamaDist;
•Input Distan Tama @@; Prec=1/Distan;
•Datalines;
•1.5 30 1.5 20 1.5 30 1.5 25 3 43 3 33 3 25 3 30 4.5 25 4.5 36 4.5 48
4.5 33 6 43 6 36 6 23 6 48 7.5 30 7.5 25 7.5 50 7.5 38 ;
•PROC MEANS calcula la estimación promedio del tamaño del objeto ignorando la
ponderación correspondiente (por defecto asigna un peso de 1 para cada
observación).
•Proc MEANS data=TamaDist maxdec=3 n mean var stddev;
var tama;
Title1 ‘ Análisis del DS TamaDist sin Ponderar'; run;
Opción WEIGHT

Los siguientes dos programas PROC MEANS usan la


medida de precisión con la opción WEIGHT.
Al ponderar por precision, la estimación del tamaño
del objeto está más cerca del tamaño real:

1-Uso de VARDEF=DF

Proc Means Data=TamaDist maxdec=3 n mean var std;


weight prec;
var tama;
output
t t out=wtstats
t t t t var=Est_SigmaSq
E t Si S std=Est_Sigma;
td E t Si
title1 'Análisis del DS TamaDist con Peso usando
Default
f l VARDEF=DF';
'
run;
2-Uso de VARDEF=WEIGHT

Proc Means Data=TamaDist maxdec=3 n mean var std


vardef=weight;
weight prec;
var tama;
title1 'Análisis del DS TamaDist con Peso usando
VARDEF=WEIGHT';
;
run;

3_4-ProcMeansWeight.sas
g
Proc MEANS: FREQ
Datos relativos a velocidad (millas náuticas/hora) y
•Datos
gasto en combustible, registrados cada hora.
•La variable Horas representa el número de horas que
el barco mantiene el mismo g gasto y velocidad. Los
dos PROC MEANS muestran el efecto de usar Horas
como variable frecuencia.

1 PROC MEANS sin


1-PROC i variable
i bl frecuencia
f i

Proc Means data=FrecVelo maxdec=2 n mean;


Var course veloc;
title 'Velocidad Promedio sin Frecuencia';
run;

•Sin Variable Frecuencia, cada observación tiene


una frecuencia de 1.
•El número total de observaciones es 8.
Proc MEANS: FREQ

2-El
2 El segundo PROC MEANS usa Horas como
variable frecuencia:

Proc Means data=FrecVelo maxdec=2 n mean;


Var course speed;
Freq horas;
title 'Velocidad Promedio con
Frecuencia'; run;

Al usar Horas como Variable Frecuencia, la


frecuencia de cada observación es el
valor de Horas.

3 5-ProcMeansFreq.sas
3_5 oc ea s eq sas
PROC MEANS con CLASSDATA
PROC MEANS statement options;
CLASSDATA nombre
CLASSDATA= b EXCLUSIVE PRINTALLTYPES;
PRINTALLTYPES
CLASS nomvar;
Archivo de Prueba

Data Tortatipo;
Input sabor $ 1-3 capas ;
da a es;
datalines;
Van 1
Van 2
Van 3
Cho 1
Cho 2
Cho 4;
Proc Means data=Torta range median min max fw=7 maxdec=0
classdata=tortatipo exclusive printalltypes;
Var Score2;
Class sabor capas;
Title ‘Score para Sabor y Capas Tipos Tortas';
PROC MEANS con CLASSDATA
Calcula las estadísticas solicitadas para las variables declaradas
en Var Programa Ensayo , y para todas las combinaciones de las
variables especificadas en Class.

Programa DATA Torta;
DATA Torta;
Maestro INPUT Nombre $ 1‐12 Edad 13‐14 Score1 16‐17 
Score2 19‐20   Sabor $ 23‐25 Capas 30;

Programa
P Data Tortatipo;
D T i
Ensayo Input  Sabor $ 1‐3  Capas ;
datalines;
Se calculan las Van 1
estadísticas de las Van 2
variables en Var Van 3
(score2), para las Cho 1
combinaciones posibles Cho 2
con los valores de las Cho 4 ;
variables leídas en el Proc Means data=Torta  classdata=Tortatipo exclusive  
programa ensayo printalltypes;
(sabor, capas).
Var Score2;
Class sabor capas;       3_6‐ProcMeansClassData.sas
PROC MEANS con PROC FORMAT
DATA Torta;
INPUT Nombre $ 1-12
1 12 Edad 13-14
13 14 Score1 16-17
16 17
Score2 19-20 Sabor $ 23-25 Capas 30;
Proc Format;
value $sbrfmt
$
'Chocolate'='Cho’    'Vainilla'='Van‘    'Ron','Esp'='OtrosSabr';
value edadfmt (multilabel)
15 ‐ 29='< 30 a‘   30 ‐ 50='entre 30 y 50 a‘    51 ‐ high='> 50 a‘     56 ‐ high='>= 56 '
15 ‐ 19='15 ‐ 19‘   20 ‐ 25='20 ‐ 25‘    25 ‐ 39='25 ‐ 39‘   40 ‐ 55='40 ‐ 55'; 
run;   

Proc Means data=Torta   fw=6   n min max


data Torta fw 6 n min max mean median  nonobs;
mean median nonobs;
class sabor/order=freq;
class edad /mlf order=fmt;
t
types sabor sabor*edad;
b b * d d
var Score2; 
format Edad  edadfmt.  Sabor  $sbrfmt.;         

3_7‐ProcMeansFormat.sas
PROC MEANS con IC Media
DATA Torta;
INPUT N b $ 1 12 Ed d 13 14 S
INPUT Nombre $ 1‐12 Edad 13‐14 Score1 16‐17  1 16 17
Score2 19‐20   Sabor $ 23‐25 Capas 30;
Proc Format;
value $sbrfmt
'Chocolate'='Cho‘    'Vainilla'='Van‘   'Ron','Esp'='OtrosSabr';
value edadfmt (multilabel)
15 ‐ 29
15  29='<< 30
30‘       30 
30 ‐ 50
50=‘30
30  ‐ 50
50‘   51 
51 ‐ high
high='>> 50
50‘ ‘   56 
56 ‐ high
high='>=
>  56 
56 '
15 ‐ 19='15 ‐ 19‘   20 ‐ 25='20 ‐ 25‘    25 ‐ 39='25 ‐ 39‘   40 ‐ 55='40 – 55;
run;   

proc means data=Torta fw=6 n alpha=0.1 clm mean  nonobs;


class sabor/order =freq;
class edad /mlf order =fmt;
types sabor;
var Score2;
format edad edadfmt. sabor $sbrfmt.;
titl 'IC Media Muestral';
title 'IC M di M t l'
run;  3_8‐ProcMeansIC.sas   
PROC UNIVARIATE

DATA=LIBRERÍA ARCHIVO OPCIONES:


PROC UNIVARIATE DATA=LIBRERÍA.ARCHIVO
•BY VARIABLES;
•CLASS VARIABLES/OPCIONES;
•FREQ VARIABLE;
•ID VARIABLES;
HISTOGRAM VARIABLE/ OPCIONES;
•HISTOGRAM
•ID VARIABLES;
•INSET ESTADÍSTICOS
O
•OUTPUT OUT=ARCHIVO=NOMBRE
O C O O VARIABLES;
S
•PROBPLOT VARIABLES/OPCIONES;
•QQPLOT VARIABLES/OPCIONES;
;
•VAR VARIABLES ;
PROC UNIVARIATE con ODS
ODS SELECT EXTREMEOBS;
PROC UNIVARIATE data=clinica.pacientes;
VAR HR SBP DBP;
DBP
ID PAcN;
RUN;

Procedimiento UNIVARIATE
Variable: DBP (Presión Diastólica)

Extreme Observations
--------Lowest-------- --------Highest-------
Value PAcN Obs Value PAcN Obs
8 020 23 106 027 28
20 011 12 120 004 4
64 013 14 120 010 11
68 025 27 180 009 10
68 006 6 200 321 22
NEXTROBS Option PROC UNIVARIATE
ODS SELECT EXTREMEOBS;
PROC UNIVARIATE data=clinica.pacientes NEXTROBS=3;
VAR HR SBP DBP;
;
ID PAcN;
RUN;

Procedimiento UNIVARIATE
Variable: DBP (Presión Diastólica)

Extreme Observations

--------Lowest-------- --------Highest-------
Value PATNO Obs Value PATNO Obs
8 020 23 120 010 11
20 011 12 180 009 10
64 013 14 200 321 22
PROC UNIVARIATE con ODS
ods html file = 'C:\DataSAS\html\3_UnivariateOds1.html';
Data Velocidad;;
label Velocidad = 'Velocidad(millas/hora)';
DO VelocEx = 66 to 85;
Input Numero @@;
Input  Numero @@;
Output;
End;
Datalines;
2  3  2  1  3  6  8  9 10 13 
12 14  6  2  0  0  1  1  0  1
;
proc print data = Velocidad; run;
title 'Analisis de DS Velocidad';
ODS select Moments;
ODS select
Proc Univariate data=Velocidad;
Freq Numero;
Var VelocEx; 
VelocEx;
run;
ods html close;
PROC UNIVARIATE con ODS
ods html file = ‘3_Univariate.html';
Data Aire (keep = Sitio Ozono);
label Sitio  = 'N. Sitio'
Ozono = 'Nivel Ozono';
d i
do i = 1 to 3;
input Sitio @@;
Uso de la estructura
do j = 1 to 15;
DO …. END
input Ozono @@;
input Ozono @@; en lectura de datos
output;
end;
end;
datalines;
102 4 6 3 4 7 8 2 3 4 1 3 8 9 5 6
134 5 3 6 2 1 2 4 3 2 4 6 4 6 3 1
137 8 9 7 8 6 7 6 7 9 8 9 8 7 8 5    ;
ODS  Select Moments SSPlots;
proc univariate data=Aire plot;
by Sitio;
var Ozono;    run;
ods html close;

Vous aimerez peut-être aussi