Publicado el :
ETL CREATION_INTERNE

Instrucción KEEP

Este código también está disponible en: Deutsch English Français
En espera de validación
La instrucción KEEP permite que un paso DATA escriba solo las variables especificadas en uno o varios conjuntos de datos SAS©. La instrucción KEEP se aplica a todos los conjuntos de datos SAS© creados dentro del mismo paso DATA y puede aparecer en cualquier lugar del paso. Si no aparece ninguna instrucción KEEP o DROP, todos los conjuntos de datos creados en el paso DATA contienen todas las variables.
Si la misma variable se lista tanto en las instrucciones DROP como KEEP, DROP tiene precedencia sobre KEEP, independientemente del orden de las instrucciones, y la variable se elimina.
Nota: No utilice las instrucciones KEEP y DROP en el mismo paso DATA.
Comparaciones:
* La instrucción KEEP no se puede utilizar en los pasos PROC SAS©. La opción del conjunto de datos KEEP= sí puede.
* La instrucción KEEP se aplica a todos los conjuntos de datos de salida nombrados en la instrucción DATA. Para escribir diferentes variables en diferentes conjuntos de datos, debe utilizar la opción del conjunto de datos KEEP=.
* La instrucción DROP es una instrucción paralela que especifica las variables a omitir del conjunto de datos de salida.
* Las instrucciones KEEP y DROP seleccionan las variables a incluir o excluir de los conjuntos de datos de salida. La instrucción IF de subconjunto selecciona las observaciones.
* No confunda la instrucción KEEP con la instrucción RETAIN. La instrucción RETAIN hace que SAS© conserve el valor de una variable de una iteración del paso DATA a la siguiente. La instrucción KEEP no afecta el valor de las variables, sino que solo especifica qué variables incluir en los conjuntos de datos de salida.
Análisis de datos

Type : CREATION_INTERNE


Los ejemplos utilizan datos generados (datalines) o SASHELP.

1 Bloque de código
DATA STEP Data
Explicación :
Este ejemplo muestra cómo usar la instrucción KEEP para especificar las variables que se deben conservar en un nuevo conjunto de datos `employees_subset`. Solo las variables especificadas (`name`, `address`, `city`, `state`, `zip`, `phone`) se incluirán en el conjunto de datos final.
¡Copiado!
1DATA employees;
2 INPUT name $ address $ city $ state $ zip $ phone $;
3 DATALINES;
4John Doe 123 Main St Anytown CA 90210 555-1234
5Jane Smith 456 Oak Ave Othercity NY 10001 555-5678
6;
7RUN;
8 
9DATA employees_subset;
10 SET employees;
11 keep name address city state zip phone;
12RUN;
2 Bloque de código
DATA STEP Data
Explicación :
Este ejemplo utiliza la instrucción KEEP para incluir únicamente las variables `name` y `avg` en el conjunto de datos de salida `average`. Las variables `score1` a `score20`, a partir de las cuales se calcula `avg`, no se escriben en el conjunto de datos `average`.
¡Copiado!
1DATA scores;
2 INPUT name $ score1-score20;
3 DATALINES;
4Alice 85 90 78 92 88 76 95 89 80 82 77 91 85 93 86 79 90 84 87 94
5Bob 70 65 72 75 68 80 73 78 71 76 69 81 74 79 70 82 75 77 71 80
6;
7RUN;
8 
9DATA average;
10 SET scores;
11 keep name avg;
12 avg=mean(of score1-score20);
13RUN;
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.