SAS

Truco SAS. Función para contar caracteres

Si deseamos contar cuantas veces aparece un caracter dentro de una cadena en SAS nos encontramos que no existe ninguna función de texto en SAS. Para ello podemos utilizar otras funciones de texto en SAS. La idea es determinar la longitud de la cadena con el caracter en cuestión y restarle la longitud de la cadena sin el caracter. Es decir, ¿cuántas A hay en la frase «Menuda crisis financiera»? Longitud con A y sin espacios= 22, longitud sin A y sin espacios=19, luego 22-19=3 aes. Para este ejemplo no se tienen en cuenta los espacios en blanco, veamos el programa en SAS:

Truco SAS. Macro buscar y reemplazar en texto

A veces hay problemas a la hora de importar un fichero de texto a SAS. Por ejemplo el fichero proviene de Access y tiene los números con formato europeo. El siguiente programa hace un buscar y reemplazar pero con SAS. Partimos de un fichero de texto ubicado en c:\temp\pepin.txt así:

4.497,31 2.776,50
2.555,46 6.782,73
3.752,77 8.791,32
1.599,49 6.903,17
8.584,16 7.050,30
8.061,74 2.605,04
3.666,99 7.319,29
751,63 1.919,96
5.635,12 4.795,78
9.714,18 5.342,31
9.160,85 9.752,27
7.609,17 2.409,43
1.855,36 8.768,07
1.715,74 4.031,63
8.775,23 7.256,52
2.339,50 9.234,67
6.268,95 1.531,50
4.406,24 5.395,50

Truco SAS. Proc contents que genera un dataset

Vamos a introducir los nombres de las variables SAS de un dataset en otro dataset. Esto puede sernos muy útil para realizar documentación, validaciones de los conjuntos de datos generados, automatización de instrucciones,… Es un truco muy sencillo y tan sólo es necesario comprender el funcionamiento del ODS de SAS explicado en otro de los mensajes de este blog. Simplemente empleamos el proc contents de SAS y almacenamos con ODS en un dataset el resultado del listado de las variables:

Importar a SAS desde otras aplicaciones.

Una de las labores más comunes con SAS consiste en leer e importar ficheros provenientes de otras aplicaciones. Es muy habitual trabajar con tablas de Excel, Access, Lotus, Business Object, Microstrategy, SQL Server, SAP… Para ello SAS dispone de algunos módulos que no se disponen en todas las instalaciones debido a que pueden encarecer mucho la instalación final. Por este motivo voy a introduciros en una metodología muy habitual en el trabajo diario: Importación de textos delimitados con SAS.