Los datos se generan directamente en el script a través de la instrucción DATALINES en el DATA Step que crea la tabla MYSASLIB.SUBJECTS.
1 Bloque de código
DATA STEP Data
Explicación : Creación de una tabla de ejemplo 'SUBJECTS' en la biblioteca 'MYSASLIB' que contiene 4 columnas de caracteres, alimentada con datos estáticos (DATALINES).
¡Copiado!
DATA MYSASLIB.SUBJECTS;
INPUT SUB1 $ SUB2 $ SUB3 $ SUB4 $;
DATALINES;
12 21 13 14
13 21 12 14
15 31 23 23
15 33 21 32
M F F M
;
1
DATA MYSASLIB.SUBJECTS;
2
3
INPUT SUB1 $ SUB2 $ SUB3 $ SUB4 $;
4
DATALINES;
5
12211314
6
13211214
7
15312323
8
15332132
9
M F F M
10
;
2 Bloque de código
PROC TRANSPOSE Data
Explicación : Transposición simple de las variables SUB1 a SUB4. Las nuevas columnas generadas tomarán los nombres por defecto (COL1, COL2, etc.).
¡Copiado!
PROC TRANSPOSE DATA=MYSASLIB.SUBJECTS OUT=MYSASLIB.TRANSPOSED;
VAR SUB1 SUB2 SUB3 SUB4;
RUN;
1
2
PROC TRANSPOSE
3
DATA=MYSASLIB.SUBJECTS OUT=MYSASLIB.TRANSPOSED;
4
VAR SUB1 SUB2 SUB3 SUB4;
5
RUN;
6
3 Bloque de código
PROC TRANSPOSE Data
Explicación : Segunda transposición de las mismas variables, pero utilizando la opción PREFIX=INFO para nombrar las columnas resultantes (INFO1, INFO2, etc.).
Explicación : Visualización del resultado de la segunda transposición para verificación.
¡Copiado!
PROC PRINT DATA=MYSASLIB.TRANSPOSED2;
RUN;
1
PROC PRINTDATA=MYSASLIB.TRANSPOSED2;
2
RUN;
5 Bloque de código
DATA STEP Data
Explicación : Creación de la tabla final 'NEW_SUBJ' a partir de la tabla transpuesta. Uso de la instrucción RENAME para asignar nombres de negocio a las columnas generadas automáticamente.
¡Copiado!
DATA MYSASLIB.NEW_SUBJ;
SET MYSASLIB.TRANSPOSED2;
RENAME INFO1=T1 INFO2=T2
INFO3=T3 INFO4=T4
INFO5=GENDER _NAME_=SUBJECT;
RUN;
1
DATA MYSASLIB.NEW_SUBJ;
2
SET MYSASLIB.TRANSPOSED2;
3
RENAME INFO1=T1 INFO2=T2
4
INFO3=T3 INFO4=T4
5
INFO5=GENDER _NAME_=SUBJECT;
6
RUN;
6 Bloque de código
PROC PRINT
Explicación : Informe final que muestra los datos reestructurados y renombrados, con un título y una nota al pie.
¡Copiado!
PROC PRINT DATA=MYSASLIB.NEW_SUBJ;
RUN;
TITLE 'transpose function';
FOOTNOTE 'result of TP';
1
PROC PRINTDATA=MYSASLIB.NEW_SUBJ;
2
RUN;
3
TITLE 'transpose function';
4
FOOTNOTE 'result of TP';
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.
Información de copyright : (C) 2016 Elliott, Alan C. and Woodward, Wayne A.
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.