Trucos SAS. Lista de datasets en macrovariable
Un uso frecuente del PROC SQL es la generación de macrovariables. En este ejemplo, vamos a crear una macrovariable con el nombre de los datasets de una librería SAS que contengan un determinado patrón. También es un ejemplo bastante práctico del uso de las vistas de SASHELP. Para entender mejor el truco, vamos a generar 20 ficheros ficticios con variables aleatorias en el directorio C:\temp: libname temp "C:\temp"; * GENERAMOS 20 DATASETS ALEATORIOS; %macro tablas_aleatorias; %do i = 1 %to 20; data temp.aleat&i.; do j = 1 to 100; persona = ranpoi(8, 23); importe1 = int(rand("uniform") * 1000); importe2 = int(rand("uniform") * 1000); tae = ranpoi(34, 2) + round(rand("uniform"), .1); output; end; drop j; run; %end; %mend tablas_aleatorias; %tablas_aleatorias; Esta macro hace un bucle y genera 20 datasets. A continuación, necesitamos crear un dataset que sea la concatenación de los 20 generados anteriormente. Podríamos poner los 20 nombres a mano, pero esto no es elegante. Para automatizar esto debemos hacer lo siguiente: ...