martes, 26 de agosto de 2014

Tutorial de SAS

En el siguiente link se incluye un tutorial de SAS/BASE que pretende ser de utilidad para todos aquellos que se inician en el uso de esta herramienta.




Tutorial SAS

Como ya indicamos en un post anterior, un grupo de profesionales especializados en Business Intelligence estamos preparando cursos de formación a medida para usuarios que quieran iniciarse en análisis de información con las herramientas R y SAS.





El curso está adaptado a la gran variedad de perfiles que pueden estar interesados en conocer R y SAS para su actividad profesional: informáticos, matemáticos, estadísticos, sociólogos, economistas, su empleo en investigación: biología, química, medio ambiente, etc..

Igualmente disponemos de un curso de adaptación para usuarios que conozcan otras herramientas similares como pueden ser SPSS ayudándoles a realizar la transición.

El curso de R se basa en la solución Rstudio y el de SAS en el módulo BASE de la  SAS University Edition , versión gratuita recientemente distribuida por SAS

El objetivo es que los cursos sean muy prácticos, muy orientados y muy económicos.

Los interesados pueden escribir para recibir más info a:  formacion@datademy.es


El curso de SAS ya está organizado y planificado: Formación SAS


miércoles, 20 de agosto de 2014

Excel: refresco automático de origen de datos en tablas dinámicas

Dada la estrecha relación de Excel con los procesos de B.I. y de análisis de información, vamos a iniciar una serie de posts de Excel, en el que veremos diferentes utilidades de aplicación al análisis de datos.



Es habitual en un libro Excel en el que estamos analizando una tabla de datos, el disponer diferentes tablas dinámicas que apuntan a la misma tabla fuente de datos, pero muestran la información desde una diferente perspectiva camibiando el nivel de detalle, los ejes de análisis, los filtros o realizando zoom específicos sobre determinados datos. De forma, que podemos tener un conjunto de tablas dinámicas estructuradas en diferentes hojas, pero apuntando al mismo origen de datos: hoja de detalle, fichero externo, tabla access o tabla sql server externa, etc..

Un cambio de estructura o simplemente de nombre en nuestro origen de datos nos obligaría a volver a vincular todas las tablas dinámicas apuntando al nuevo origen de datos. Podemos automatizar este proceso realizando el vínculo solo para una taba dinámica que utilizaremos como tabla de referencia, para después actualizar el resto mediante una macro que recorra todas las tablas dinámicas actualizando el origen de datos en base al origen vinculado a la tabla dinámica de referencia.

El código de la macro sería el siguiente:

Sub Vincula_Tablas()

Dim pt As PivotTable
Dim ws As Worksheet

 ' seleccionamos la tabla dinámica de referencia, situada en la hoja: "hoja de    referencia", si hubiera
 ' varias tablas en esta hoja, deberíamos seleccionar la que corresponda
Set ptMaes = Worksheets("HOJA REFERENCIA").PivotTables(1)
 'actualizamos la configuración al resto de tablas dinámicas de el libro de trabajo
For Each ws In ActiveWorkbook.Worksheets ' recorre todas las hojas
  For Each pt In ws.PivotTables ' recorre todas las tablas dinámicas de la hoja
    pt.CacheIndex = ptMaes.CacheIndex ' actualiza origen datos
  Next pt  ' fin bucle tablas dinámicas
Next ws ' fin bucle hojas 

End Sub

De igual forma, si tuviéramos que actualizar todas las tablas dinámicas, debido a un cambio en los datos de las fuentes origen, podemos hacerlo de modo similar:


Sub Actualiza_Tablas()

Dim pt As PivotTable
Dim ws As Worksheet

For Each ws In ActiveWorkbook.Worksheets ' recorre todas las      hojas
  For Each pt In ws.PivotTables ' recorre todas las tablas dinámicas de la hoja
    pt.PivotCache.Refresh  ' actualiza tabla dinámica
  Next pt  ' fin bucle tablas dinámicas
Next ws ' fin bucle hojas 

End Sub



sábado, 16 de agosto de 2014

Métodos para exportar a Excel desde SAS

Con frecuencia es necesario realizar una exportación de datos de tabla SAS a Excel.

Siempre existe la posibilidad de realizar la exportación de forma manual, empleando las utilidades que dispone SAS para ello. Por ejemplo, desde SAS Entreprise Guide.


A continuación mostramos dos ejemplos de métodos de exportación para poder realizarlo desde código SAS/BASE, la primera utiliza el procedimienro 'proc export' y la segunda la utilidad de exportación ODS (Output Delivery System).


/* Creamos la tabla de ejemplo */

data clientes;
length nombre $20. ciudad $20. edad 8.;
nombre = 'Pepe';ciudad = 'Madrid';edad = 30;
output;
nombre = 'Luis';ciudad = 'Valencia';edad = 40;
output;
nombre = 'Ana';ciudad = 'Murcia';edad = 50;
output;
run;

/* METODO 1 */
/* Emplendo procedimiento export */
proc export data=clientes
     outfile="C:\TEMP\pruebas_sas\clientes.xls"  dbms=EXCEL2007;
run;

/* METODO 2 */
/* Exportamos empleando el ODS (output delivery system) */
filename sasexcel 'C:\TEMP\pruebas_sas\clientes.csv';
ods csv file = sasexcel;
proc print data=clientes;
run;
ods csv close;
ods listing;


Una vez realizada la exportación el tratamiento es puramente Excel donde podremos utilizar las técnicas propios de esta herramienta y sacarle partido con webs útiles como Excel y VBA

Más info

viernes, 1 de agosto de 2014

Modo vacaciones

Lanzamos el siguiente script esperando entrar en breve en modo vacaciones:

proc sql;
create table vacaciones as (
select descanso, familia, amigos, playa, sol, viajes, libros, mochila, caminatas, bares, tapas, helados
from verano where periodo = 201408 and movil_oficina = 'OUT')
quit;

Para intentar no hacer esto:



Sino esto:


que es lo que toca....

Felices vacaciones!!

Proximamente...