Truco SAS. Tablas de una librería en una macrovariable

Me plantean una duda: cómo crear un conjunto de datos con las tablas de una librería en SAS y, posteriormente, generar una macrovariable con ellos. Ésta es una entrada análoga a otra del blog, pero sirve para recordar cómo funciona el ODS de SAS y el PROC DATASETS, un procedimiento que no he usado habitualmente pero que es muy potente. Lo primero que vamos a hacer es observar qué resultados arroja el PROC DATASETS en su sintaxis más sencilla para ver los contenidos de una librería: ...

24 de enero de 2017 · rvaquerizo

Trucos SAS. Ordenar las variables de un dataset

Para cambiar el orden de las variables en un conjunto de datos SAS, hemos de emplear RETAIN antes de SET. Este truco es la respuesta a una duda planteada en el blog. Con un vistazo rápido al ejemplo entenderemos la sintaxis: data datos; do i = 1 to 20; importe1 = ranuni(8) * 100; importe2 = ranuni(3) * 100; importe3 = ranuni(1) * 100; id = put(i, z5.); output; end; drop i; run; data datos_reordenados; retain id importe3; set datos; run; Como vemos, RETAIN nos permite reordenar las variables del dataset independientemente del tipo de variable que estemos manejando. También podríamos emplear algún otro tipo de sentencia, pero es recomendable usar RETAIN; como vemos, no es necesario poner el total de las variables. Saludos.

30 de mayo de 2013 · rvaquerizo

Monográfico. Datos agrupados en SAS

A continuación, os planteo un monográfico más orientado a principiantes con SAS. Vamos a realizar un acercamiento a los conjuntos de datos SAS agrupados por variables. La premisa fundamental es: un conjunto de datos SAS está agrupado por una variable si está ordenado por ella. Para ordenar variables empleamos el PROC SORT: proc sort data=<dataset>; by [descending] <variable_ordenacion>; run; Repetimos: un conjunto de datos SAS puede agruparse por una o varias variables si está ordenado por ellas. Algunas de las posibilidades que nos ofrecen este tipo de conjuntos de datos son: ...

6 de noviembre de 2009 · rvaquerizo