Los ejemplos utilizan datos generados a través de datalines, asegurando su autonomía.
1 Bloque de código
DATA STEP / PROC SORT Data
Explicación : Este ejemplo muestra cómo agrupar datos utilizando una sola variable BY, `zipCode`, en un paso DATA. El conjunto de datos `zip` contiene nombres de calles, ciudades, estados y códigos postales. Los grupos se crean especificando la variable `zipCode` en la instrucción BY. El paso DATA organiza los códigos postales con los mismos valores en grupos. La figura muestra cinco grupos BY que se crean.
¡Copiado!
data zip;
input zipCode State $ City $ Street $20-29;
datalines;
85730 AZ Tucson Domenic Ln
85730 AZ Tucson Gleeson Pl
33133 FL Miami Rice St
33133 FL Miami Thomas Ave
33133 FL Miami Surrey Dr
33133 FL Miami Trade Ave
33146 FL Miami Nervia St
33146 FL Miami Corsica St
33801 FL Lakeland French Ave
33809 FL Lakeland Egret Dr
;
proc sort data=zip;
by zipCode;
run;
data zip;
set zip;
by zipCode;
run;
proc print data=zip noobs;
title 'BY-Group Uing a Single Variable: ZipCode';
run;
1
DATA zip;
2
INPUT zipCode State $ City $ Street $20-29;
3
DATALINES;
4
85730 AZ Tucson Domenic Ln
5
85730 AZ Tucson Gleeson Pl
6
33133 FL Miami Rice St
7
33133 FL Miami Thomas Ave
8
33133 FL Miami Surrey Dr
9
33133 FL Miami Trade Ave
10
33146 FL Miami Nervia St
11
33146 FL Miami Corsica St
12
33801 FL Lakeland French Ave
13
33809 FL Lakeland Egret Dr
14
;
15
16
PROC SORTDATA=zip;
17
BY zipCode;
18
RUN;
19
20
DATA zip;
21
SET zip;
22
BY zipCode;
23
RUN;
24
25
PROC PRINTDATA=zip noobs;
26
title 'BY-Group Uing a Single Variable: ZipCode';
27
RUN;
2 Bloque de código
DATA STEP / PROC SORT Data
Explicación : Este ejemplo muestra los resultados del procesamiento del conjunto de datos `zip` con dos variables BY, State y City. La figura muestra tres grupos BY. El conjunto de datos se muestra con las variables BY State y City impresas a la izquierda para facilitar la lectura. La posición de las variables BY en las observaciones no afecta la forma en que los valores se agrupan y ordenan.
Las observaciones se organizan de tal manera que las observaciones para Arizona aparecen primero. Las observaciones dentro de cada valor de State se organizan por el orden del valor de City. Cada grupo BY tiene una combinación única de valores para las variables State y City. Por ejemplo, el valor BY del primer grupo BY es `AZ Tucson`, y el valor BY del segundo grupo BY es `FL Lakeland`.
¡Copiado!
data zip;
input State $ City $ Street $13-22 ZipCode ;
datalines;
FL Miami Nervia St 33146
FL Miami Rice St 33133
FL Miami Corsica St 33146
FL Miami Thomas Ave 33133
FL Miami Surrey Dr 33133
FL Miami Trade Ave 33133
FL Lakeland French Ave 33801
FL Lakeland Egret Dr 33809
AZ Tucson Domenic Ln 85730
AZ Tucson Gleeson Pl 85730
;
proc sort data=zip;
by State City;
run;
data zip;
set zip;
by State City;
run;
proc print data=zip noobs;
title 'BY Groups with Multiple BY Variables: State City';
run;
1
DATA zip;
2
INPUT State $ City $ Street $13-22 ZipCode ;
3
DATALINES;
4
FL Miami Nervia St 33146
5
FL Miami Rice St 33133
6
FL Miami Corsica St 33146
7
FL Miami Thomas Ave 33133
8
FL Miami Surrey Dr 33133
9
FL Miami Trade Ave 33133
10
FL Lakeland French Ave 33801
11
FL Lakeland Egret Dr 33809
12
AZ Tucson Domenic Ln 85730
13
AZ Tucson Gleeson Pl 85730
14
;
15
16
17
PROC SORTDATA=zip;
18
BY State City;
19
RUN;
20
21
DATA zip;
22
SET zip;
23
BY State City;
24
RUN;
25
PROC PRINTDATA=zip noobs;
26
title 'BY Groups with Multiple BY Variables: State City';
27
RUN;
3 Bloque de código
DATA STEP / PROC FORMAT Data
Explicación : Este ejemplo utiliza el procedimiento FORMAT, la opción GROUPFORMAT y la instrucción FORMAT para crear e imprimir un conjunto de datos simple. El conjunto de datos de entrada TEST se ordena por valores crecientes. El conjunto de datos NEWTEST se organiza por los valores formateados de la variable Score. El ejemplo utiliza la opción GROUPFORMAT y la instrucción FORMAT para crear e imprimir un conjunto de datos simple.
Ideas clave:
- El procesamiento de grupos BY en el paso DATA utilizando la opción GROUPFORMAT es el mismo que el procesamiento de grupos BY con valores formateados en los procedimientos SAS. El uso de la opción GROUPFORMAT es útil cuando se definen formatos propios para mostrar datos agrupados.
- El uso de la opción GROUPFORMAT en el paso DATA garantiza que los grupos BY que se utilizan para crear un conjunto de datos coincidan con los grupos BY en los pasos PROC que informan datos agrupados y formateados. GROUPFORMAT también determina cómo se asignan las variables FIRST.variable y LAST.variable.
¡Copiado!
options
linesize=80 pagesize=60;
data test;
input name $ Score;
datalines;
Jon 1
Anthony 3
Miguel 3
Joseph 4
Ian 5
Jan 6
;
proc format;
value Range 1-2='Low'
3-4='Medium'
5-6='High';
run;
data newtest;
set test;
by groupformat Score;
format Score Range.;
run;
proc print data=newtest;
title 'Score Categories';
var Name Score;
by Score;
run;
1
options
2
linesize=80 pagesize=60;
3
4
DATA test;
5
INPUT name $ Score;
6
DATALINES;
7
Jon 1
8
Anthony 3
9
Miguel 3
10
Joseph 4
11
Ian 5
12
Jan 6
13
;
14
PROC FORMAT;
15
value Range 1-2='Low'
16
3-4='Medium'
17
5-6='High';
18
RUN;
19
20
DATA newtest;
21
SET test;
22
BY groupformat Score;
23
FORMAT Score Range.;
24
RUN;
25
26
PROC PRINTDATA=newtest;
27
title 'Score Categories';
28
var Name Score;
29
BY Score;
30
RUN;
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.