Publicado el :
ETL CREATION_INTERNE

Ejemplos: Fusión de datos uno a uno

Este código también está disponible en: Deutsch English Français
En espera de validación
La declaración MERGE, cuando se usa sin una instrucción BY, realiza una fusión uno a uno emparejando implícitamente las observaciones basándose en el número de línea, ignorando los valores de las variables. Si los conjuntos de datos de entrada tienen nombres de columna idénticos, los valores de las variables comunes del último conjunto de datos especificado en la declaración MERGE sobrescriben los valores de los conjuntos de datos especificados anteriormente. Las columnas no compartidas se agregan como nuevas columnas. El conjunto de datos de salida contiene todas las observaciones de todos los conjuntos de datos de entrada, independientemente de su número inicial de observaciones. La opción de sistema MERGENOBY se puede utilizar para controlar el registro de mensajes durante una fusión uno a uno.
Análisis de datos

Type : CREATION_INTERNE


Los ejemplos utilizan datos generados (datalines) para asegurar la autonomía del código.

1 Bloque de código
DATA STEP / PROC PRINT Data
Explicación :
Este ejemplo ilustra una fusión uno a uno de dos conjuntos de datos, 'animal' y 'plantG', que tienen un número igual de observaciones. La declaración MERGE se utiliza sin instrucción BY. Los valores de la variable 'common' en 'plantG' (el último conjunto de datos especificado) sobrescriben los de 'animal' en la sexta observación, donde difieren. Las variables no comunes se agregan, y todas las observaciones se incluyen en el resultado.
¡Copiado!
1DATA animal;
2 INPUT common $ animal $;
3 DATALINES;
4a Ant
5b Bird
6c Cat
7d Dog
8e Eagle
9f Frog
10;
11DATA plantG;
12 INPUT common $ plant $;
13 DATALINES;
14a Apple
15b Banana
16c Coconut
17d Dewberry
18e Eggplant
19g Fig
20;
21DATA merged;
22 MERGE animal plantG;
23RUN;
24 
25PROC PRINT DATA=merged; RUN;
2 Bloque de código
DATA STEP / PROC PRINT Data
Explicación :
Este caso muestra una fusión uno a uno entre 'animal' (6 observaciones) y 'plantMissing' (3 observaciones). La declaración MERGE sin instrucción BY procesará todos los registros de cada conjunto de datos combinándolos línea por línea. Las observaciones faltantes en el conjunto de datos más corto ('plantMissing') resultan en valores faltantes en las columnas correspondientes del conjunto de datos resultante donde no hay una coincidencia implícita, ya que la fusión continúa hasta que se procesan todas las observaciones de todos los conjuntos de datos. Si se hubiera utilizado la declaración 'SET', el programa se habría detenido después de leer el último registro del conjunto de datos más pequeño.
¡Copiado!
1DATA animal;
2INPUT common $ animal $;
3DATALINES;
4a Ant
5b Bird
6c Cat
7d Dog
8e Eagle
9f Frog
10;
11 
12DATA plantMissing;
13INPUT common $ plant $;
14DATALINES;
15a Apple
16b Banana
17c Coconut
18;
19 
20DATA merged;
21 MERGE animal plantmissing;
22RUN;
23PROC PRINT DATA=merged; RUN;
3 Bloque de código
DATA STEP / PROC PRINT Data
¡Copiado!
1DATA animalDupes;
2INPUT common $ animal $;
3DATALINES;
4a Ant
5a Ape
6b Bird
7c Cat
8d Dog
9e Eagle
10;
11 
12DATA plantDupes;
13INPUT common $ plant $;
14DATALINES;
15a Apple
16b Banana
17c Coconut
18c Celery
19d Dewberry
20e Eggplant
21;
22 
23DATA merged;
24 MERGE animalDupes plantDupes;
25RUN;
26PROC PRINT DATA=merged; RUN;
4 Bloque de código
DATA STEP / PROC PRINT Data
¡Copiado!
1DATA animalMissing;
2 INPUT common $ animal $;
3 DATALINES;
4a Ant
5c Cat
6d Dog
7e Eagle
8;
9DATA plantMissing2;
10 INPUT common $ plant $;
11 DATALINES;
12a Apple
13b Banana
14c Coconut
15e Eggplant
16f Fig
17;
18DATA merged;
19 MERGE animalMissing plantMissing2;
20RUN;
21PROC PRINT DATA=merged; 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.
Información de copyright : Copyright © SAS Institute Inc. All Rights Reserved