Publicado el :
Macro EXTERNE

Macro AHGdropvar - Eliminación de variables por índice

Este código también está disponible en: Deutsch Français
La macro `AHGdropvar` genera un paso DATA para excluir variables específicas de un conjunto de datos. El usuario proporciona la tabla de entrada (`dsn`) y una lista de índices (`IDs`). La macro se basa en macros externas no proporcionadas aquí (`AHGblank`, `AHGbarename`, `AHGvarlist`, `ahgcount`) para recuperar la lista de variables de la tabla y mapear los índices a los nombres de variables correspondientes. El resultado se escribe en la tabla `out` (o sobrescribe la entrada si `out` está vacío).
Análisis de datos

Type : EXTERNE


La macro opera sobre una tabla SAS existente pasada como parámetro (`dsn`).

1 Bloque de código
MACRO
Explicación :
Definición de la macro. Resuelve los nombres de las variables a eliminar mediante un bucle sobre los índices proporcionados y genera dinámicamente un paso DATA con la opción `DROP=`.
¡Copiado!
1%macro AHGdropvar(dsn,IDs,out=);
2 %IF %AHGblank(&out) %THEN %let out=%AHGbarename(&dsn);
3 %local i count varlist;
4 %AHGvarlist(&dsn,Into=varlist,dlm=%str( ),global=0);
5 %let count=%ahgcount(&ids);
6 DATA &out;
7 SET &dsn(drop=
8 %DO i=1 %to &count;
9 %scan(&varlist,%scan(&IDs,&i))
10 %END;
11 );
12 RUN;
13
14%mend;
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.