Archivo para la categoría ‘Trucos’

Truco R. Eval, parse y paste para automatizar código

Viernes, Enero 7th, 2011

La función paste nos permite concatenar cadenas de texto con R: paste("Dato",rep(1:10),sep="") Parse recoge una expresión pero no la evalúa: parse(text="sqrt(121)") Y por último eval evalúa una expresión: eval(parse(text="sqrt(121)")) Interesantes funciones que nos pueden permitir automatizar códigos recursivos o códigos guardados como objetos en R. Imaginemos el siguiente ejemplo de R: ejemplo1 <- data.frame(replicate (20,rpois(20,10))) nom <- paste("dato",1:20,sep="") names(ejemplo1) ...

Recodificar el valor de un factor en R

Martes, Diciembre 7th, 2010

Tras leer una duda planteada en la lista de R-Help en español me he animado a crear una entrada acerca de la recodificación de factores en R. Así dejo recogido algún código/truco que puede serviros en vuestro trabajo con R y que este pequeño problema no afecte a vuestra productividad. ...

Trucos Excel. Mapa de España por provincias

Lunes, Noviembre 15th, 2010

Pongo a vuestra disposición un archivo Excel que nos permite la realización del siguiente gráfico: En este link podéis descargaros el archivo. He elegido formato Excel 2003 para el archivo, de este modo lo podréis utilizar muchos de vosotros. Si alguien desea el formato 2007 que lo diga

Objetos hash para ordenar tablas SAS

Viernes, Noviembre 12th, 2010

A partir de la versión 9.1 de SAS se incluyeron los objetos HASH. Hace tiempo ya demostramos su eficiencia en el cruce de tablas y hoy quería mostraros como se programa una ordenación empleando HASH. La verdad es que estoy saboreando mis últimos días con SAS v9.2, en breve volveré ...

Abreviar código en Enterprise Guide

Jueves, Noviembre 11th, 2010

En Enterprise Guide de SAS podemos ahorrarnos código empleando las abreviaturas del editor. Yo no lo recomiento porque nuestros códigos sólo podrán ser ejecutados con nuestros equipos pero Guide es una herramienta pensada para los usuarios y no para el desarrollo de código. Sobre un programa de Guide pulsamos sobre programas-> Añadir Abreviaturas ...

Trucos SAS. Ejecutar un código si existe una tabla o un fichero

Miércoles, Noviembre 10th, 2010

Esta duda me llegó hace unos días. Se trataba de ejecutar un código si existía determinado fichero o determinada tabla. Para hacer esto os planteo una posible metodología que yo utilizaba cuando programaba SAS en una gran entidad bancaria con Enterprise Guide 1, por aquellos entonces hacía maravillas con la ...

Macros (fáciles) de SAS. Normaliza un texto rápido

Lunes, Noviembre 8th, 2010

¿Tienes que normalizar un texto con SAS? Llevas 2 horas buscando funciones de texto con la ayuda y te has crispado. En una macro y de forma muy rápida os planteo un muestrario de funciones con las que podéis normalizar (un poco) un texto. Esto es algo que tuve que ...

Trucos Excel. Archivos de un directorio con una macro

Martes, Noviembre 2nd, 2010

Puede resultarnos útil tener todos los archivos de un directorio en una tabla de excel. Si estamos documentando un proceso, si nos dan un gran número de ficheros y tenemos que realizar procesos repetitivos sobre ellos, si queremos tener inventariados nuestros programas,... Para esto os planteo una macro bien sencilla ...

Duda de SAS. Longitud de la parte decimal de un número

Miércoles, Octubre 27th, 2010

Una búsqueda que me ha llegado. Longitud de la parte decimal de un número con SAS. Nos sirve para recordar (me gusta insistir en el tema) como transformamos números en caracteres con SAS. La función PUT es la que realiza esta tarea: data _null_; y=67.34123432; x=length(scan(put(y,best32.),2,".")); put x=; run; Transformamos un número a texto. Con SCAN ...

Macros (fáciles) de SAS. Busca duplicados

Jueves, Octubre 7th, 2010

Una macro muy sencilla que ha aparecido en un programa de funcionalidades y que busca registros duplicados en tablas SAS. Es muy sencilla y a alguien puede serle útil y para eso estamos, para compartir conocimientos aunque sean sencillos. Pocos somos los que compartimos nuestro conocimiento y encima poniendo nuestro ...