Archivo para la categoría ‘Trucos’

Trucos Excel. Modificar la configuración regional con Visual Basic

Domingo, Febrero 21st, 2010

Con Visual Basic podemos modificar la configuración regional. Podemos crear macros en Excel que nos realicen esta tarea. De este modo si trabajamos con aplicaciones que tienen configuración americana podemos cambiar con una macro, pegar los valores y volver a cambiar la configuración. Para poner separador decimal "." y separador ...

Truco R. Valores perdidos a 0, ejemplo de uso de sapply

Domingo, Enero 31st, 2010

Muy habitual partinos la cabeza con valores perdidos en R. Los NA pueden darnos algún quebradero de cabeza. Este truco es muy sencillo, transforma valores  missing a 0 y nos sirve para aplicar funciones a data.frame con la función sapply. Veamos el sencillo ejemplo: x=c(1,23,5,9,0,NA) y=c(5,45,NA,78,NA,34) dataf=data.frame(cbind(x,y)) mean(dataf$x,na.rm=TRUE) mean(dataf$y,na.rm=TRUE) #Podría interesarnos tener en cuenta los NAs sum(dataf$x,na.rm=TRUE)/nrow(dataf) sum(dataf$y,na.rm=TRUE)/nrow(dataf) Tenemos ...

Los mejores y más útiles trucos de R

Martes, Diciembre 29th, 2009

Como estamos medio de fiesta y da pareza poner en funcionamiento los engranajes del cerebro para producir ideas originales, me limitaré a apuntar un enlace en el que los usuarios han propuesto y votado sus mejores trucos de R. Para los más perezosos, indicaré que el campeón ha sido la función ...

Trucos SAS. Unión de múltiples tablas SAS con un nombre parecido

Lunes, Diciembre 7th, 2009

Ha llegado una búsqueda y ponemos el truco. Creo que ya lo puse pero no está mal de recordarlo. 1. Creamos 20 datasets aleatorios con 10 observaciones cada uno: %macro doit; %do i=1 %to 20; data zzdatos_&i.; do i=1 to 10; output; end; run; %end; %mend; Un bucle fácil de macros ha generado 20 dataset que se llaman ZZDATOS_n. Recomiendo siempre ...

Trucos sas. Autonumérico con PROC SQL

Viernes, Noviembre 6th, 2009

Rápido. Me ha llegado una consulta que me preguntaba como crear un campo autonumérico con PROC SQL. Tenemos que emplear la funciòn monotonic(): data uno; do i=1 to 100; output; end; run; proc sql; create table uno as select monotonic() as obs, a.* from uno a where mod(i,2)=0; quit; Equivale al _n_ de un paso data. Es una tontería pero a un ...

Trucos SAS. Identificar registros duplicados

Jueves, Octubre 29th, 2009

Muy rápido, para identificar registros duplicados existen múltiples formas. Seguramente haré un monográfico sobre este tema pero de momento dejo una píldora: data aleatorio; do i=1 to 100000; id=ranpoi(23456,56781); if ranuni(5)>=0.3 then output; end; run; proc sql; create table repes (where=(rep>1)) as select id, count(id) as rep from aleatorio group by 1; quit; proc sql; create table repes (where=(rep=1)) as select id, count(id) as rep from ...

Macros SAS. Calular la longitud de un número.

Martes, Octubre 27th, 2009

Ha llegado hoy una búsqueda que no ha permanecido en AyD ni 20 segundos. Quería calcular la longitud de un número con SAS. Como yo estoy aquí para compartir mis conocimientos y hay una persona que los necesita aquí está esta macro que espero o sea de utilidad: %macro largo(num); length(compress(put(&num.,32.))) %mend; Esta macro ...

Truco SAS. Transponer tablas con PROC TRANSPOSE, DATA o PROC SQL

Jueves, Agosto 27th, 2009

Para transponer datasets disponemos en SAS del PROC TRANSPOSE. El ahora escribiente no es muy partidario de emplearlo. Prefiero otras metodologías para transponer conjuntos de datos SAS. Voy a trabajar con un ejemplo que os servirá para aproximaros al TRANSPOSE y para entender mejor las opciones de lectura de un ...

Truco SAS. Identificar el proceso en Unix con SYSJOBID

Miércoles, Agosto 26th, 2009

Un truco SAS muy rápido y que a algún compañero le ha venido muy bien y por eso lo pongo. La macro variable &sysjobid nos idenfica el job de Unix que está corriendo en ese momento. Es una macro del sistema y se haya en el diccionario de macros de ...

Trucos SAS. Eliminar etiquetas en los conjunto de datos SAS

Lunes, Agosto 17th, 2009

Hoy planteo un ejemplo de uso de las vistas de SASHELP con los nombres de las columnas de una tabla SAS. Además sirve para conocer mejor el PROC DATASETS y la creación de macro variables con el PROC SQL. Una macro que no es de mucha utilidad pero con la ...