Publicado el :
Macro NINGUNA

Macro WHERE condicional de estado

Este código también está disponible en: Deutsch English Français
Este script SAS© define una macro `%where` que acepta un único argumento, `state`. Dentro de la macro, la función `%superq` se utiliza para asegurar que el valor de `state` se trate literalmente, incluso si contiene caracteres especiales o macros no resueltas. La macro utiliza estructuras condicionales `%if/%else` para comparar el valor de `state` con 'NC' (Carolina del Norte) o '%str(OR)' (Oregón). Si el estado coincide con 'NC', se muestra 'Southeast' en el log de SAS©. Si el estado coincide con 'OR', se muestra 'Northwest'. Para cualquier otro valor, se muestra 'Unknown'. El script finaliza con una llamada a la macro `%where` con 'OR' como argumento.
Análisis de datos

Type : NINGUNA


El script no manipula ningún dato de tablas SAS (SASHELP, externas o creadas internamente a través de DATA STEP/CARDS). Opera únicamente con valores literales y parámetros de macro, cuyo resultado se escribe en el log de SAS.

1 Bloque de código
MACRO
Explicación :
Este bloque incluye la declaración de la macro `%where` y su posterior llamada. La macro está diseñada para tomar un argumento `state` y, mediante comparaciones condicionales que utilizan `%superq` para mayor robustez, muestra una región correspondiente en el log de SAS. La llamada `%where(OR)` prueba la funcionalidad de la macro, lo que debería resultar en la visualización de 'Northwest' en el log.
¡Copiado!
1*m203d04d;
2 
3%macro where(state);
4 %IF %superq(state)=NC %THEN %put Southeast;
5 %ELSE %IF %superq(state)=%str(OR) %THEN %put Northwest;
6 %ELSE %put Unknown;
7%mend where;
8 
9%where(OR)
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.