Publicado el :
Manipulación de datos CREATION_INTERNE

Demostración de adición de conjuntos de datos SAS

Este código también está disponible en: Deutsch English Français
En espera de validación
El programa comienza creando varios conjuntos de datos (advisees, advisees_2012, advisees_2013, advisees_2014) utilizando pasos DATA con instrucciones DATALINES para generar datos internos. Luego utiliza PROC APPEND para fusionar estos conjuntos de datos de diferentes maneras. El primer 'append' es simple, con estructuras de variables idénticas. El segundo 'append' introduce un conjunto de datos (advisees_2013) sin la variable 'gender', ilustrando cómo PROC APPEND maneja las variables faltantes en el conjunto de datos de adición (rellenándolas con valores faltantes en las nuevas observaciones). Los últimos ejemplos muestran la adición de un conjunto de datos (advisees_2014) que contiene una variable adicional ('program') no presente en el conjunto de datos base. Un primer intento sin la opción FORCE resultará en la ignorancia de esta nueva variable. El segundo intento, utilizando la opción FORCE, añade la nueva variable al conjunto de datos base y la rellena con valores faltantes para las observaciones existentes, luego añade las nuevas observaciones con sus valores para esta variable. Se incluyen PROC PRINT para visualizar los resultados en cada etapa.
Análisis de datos

Type : CREATION_INTERNE


Todos los datos utilizados en este script se crean internamente mediante bloques DATA STEP e instrucciones DATALINES. No se requieren conjuntos de datos externos o SASHELP.

1 Bloque de código
DATA STEP Data
Explicación :
Este bloque DATA STEP crea un conjunto de datos llamado 'advisees' con tres variables: 'first' (nombre, carácter), 'gender' (género, carácter) y 'matric' (año de matriculación, numérico). Se inicializa con tres observaciones.
¡Copiado!
1DATA advisees;
2 INPUT first $ gender $ matric;
3 DATALINES;
4 Angela F 2010
5 Dawn F 2011
6 Aaron M 2011
7RUN;
2 Bloque de código
DATA STEP Data
Explicación :
Este bloque DATA STEP crea un conjunto de datos llamado 'advisees_2012' con la misma estructura de variables que 'advisees'. Contiene tres observaciones para el año 2012.
¡Copiado!
1DATA advisees_2012;
2 INPUT first $ gender $ matric;
3 DATALINES;
4 Sruthi F 2012
5 Lindsey F 2012
6 Natalie F 2012
7RUN;
3 Bloque de código
PROC APPEND
Explicación :
Este procedimiento PROC APPEND añade todas las observaciones del conjunto de datos 'advisees_2012' al conjunto de datos 'advisees'. Dado que los conjuntos de datos tienen estructuras de variables idénticas, la operación se realiza sin problemas.
¡Copiado!
1 
2PROC APPEND base = advisees
3DATA = advisees_2012;
4RUN;
5 
4 Bloque de código
PROC PRINT
Explicación :
Este procedimiento PROC PRINT muestra el contenido actual del conjunto de datos 'advisees' después de la primera operación de adición, mostrando las observaciones originales y las de 'advisees_2012'.
¡Copiado!
1PROC PRINT DATA = advisees;
2RUN;
5 Bloque de código
DATA STEP Data
Explicación :
Este bloque DATA STEP crea un conjunto de datos llamado 'advisees_2013' con únicamente las variables 'first' y 'matric'. La variable 'gender' está ausente en comparación con el conjunto de datos 'advisees'.
¡Copiado!
1DATA advisees_2013;
2 INPUT first $ matric;
3 DATALINES;
4 Sara 2013
5 Dennis 2013
6RUN;
6 Bloque de código
PROC APPEND
Explicación :
Este procedimiento PROC APPEND intenta añadir 'advisees_2013' a 'advisees'. Dado que 'advisees_2013' no contiene la variable 'gender' presente en 'advisees', las nuevas observaciones añadidas desde 'advisees_2013' tendrán un valor faltante para la variable 'gender'.
¡Copiado!
1 
2PROC APPEND base = advisees
3DATA = advisees_2013;
4RUN;
5 
7 Bloque de código
PROC PRINT
Explicación :
Este procedimiento PROC PRINT muestra el contenido del conjunto de datos 'advisees' después de la adición de 'advisees_2013', resaltando los valores faltantes para 'gender' en las observaciones recién añadidas.
¡Copiado!
1PROC PRINT DATA = advisees;
2RUN;
8 Bloque de código
DATA STEP Data
Explicación :
Este bloque DATA STEP crea un conjunto de datos llamado 'advisees_2014' que incluye una nueva variable 'program' no presente en el conjunto de datos base 'advisees'.
¡Copiado!
1DATA advisees_2014;
2 INPUT first $ matric program $;
3 DATALINES;
4 Nathan 2014 MPH
5 Gloria 2014 PhD
6RUN;
9 Bloque de código
PROC APPEND
Explicación :
Este procedimiento PROC APPEND intenta añadir 'advisees_2014' a 'advisees'. Sin la opción FORCE, la variable 'program' de 'advisees_2014' será ignorada y no se añadirá al conjunto de datos 'advisees' porque no existe en el conjunto de datos base.
¡Copiado!
1 
2PROC APPEND base = advisees
3DATA = advisees_2014;
4RUN;
5 
10 Bloque de código
PROC PRINT
Explicación :
Este procedimiento PROC PRINT muestra el contenido del conjunto de datos 'advisees' después del intento de añadir 'advisees_2014' sin la opción FORCE. La variable 'program' no será visible.
¡Copiado!
1PROC PRINT DATA = advisees;
2RUN;
11 Bloque de código
PROC APPEND
Explicación :
Este procedimiento PROC APPEND añade 'advisees_2014' a 'advisees' utilizando la opción FORCE. La opción FORCE permite la adición incluso si las estructuras de variables difieren. En este caso, la variable 'program' de 'advisees_2014' se añadirá al conjunto de datos 'advisees', y las observaciones existentes en 'advisees' recibirán un valor faltante para 'program'.
¡Copiado!
1 
2PROC APPEND base = advisees
3DATA = advisees_2014 force;
4RUN;
5 
12 Bloque de código
PROC PRINT
Explicación :
Este procedimiento PROC PRINT muestra el contenido final del conjunto de datos 'advisees' después de la adición forzada de 'advisees_2014', mostrando todas las variables, incluida la nueva variable 'program'.
¡Copiado!
1PROC PRINT DATA = advisees;
2RUN;
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.