Formación

Manual. Curso introducción de R. Capítulo 15: Análisis Cluster con R (I)

El proposito del análisis de conglomerados (cluster en terminología inglesa) es el agrupar las observaciones de forma que los datos sean muy homogéneos dentro de los grupos (mínima varianza) y que estos grupos sean lo más heterogéneos posible entre ellos (máxima varianza). De este modo obtenemos una clasificación de los datos multivariante con la que podemos comprender mejor los mismos y la población de la que proceden. Podemos realizar análisis cluster de casos, un análisis cluster de variables o un análisis cluster por bloques si agrupamos variables y casos. El análisis cluster se puede utilizar para:

Trucos R. Leer de Excel vía RODBC

Un gran número de visitas que llegan a este sitio tienen que ver con la importación de datos. En este caso he encontrado en Youtube un video explicativo en el que nos indican de una forma muy sencilla como importar a R datos desde hojas Excel con el paquete RODBC:

Imagen de previsualización de YouTube

«Very easy». Uno de mis siguientes proyectos es realizar videos de este tipo, bajo mi punto de vista son muy prácticos e ilustrativos.

Macros SAS. Tramificar en función de una variable respuesta

Sobre la idea de “dumificar” variables he ideado un proceso para agrupar variables cuantitativas en función de una variable respuesta. Los que disponéis de herramientas de análisis más complejas tipo Enterprise Miner o Clementine ya disponéis de algoritmos y funciones que realizan esta útil tarea, además los árboles pueden trabajar con variables continuas. Pero un modelo es bueno si las variables de entrada están bien elegidas y bien construidas y como paso previo al análisis multivariante el análisis univariable es imprescindible. Tramificar una variable continua en función de una variable respuesta no va más allá de un análisis univariante, igualmente podemos tener dependencia lineal entre variables, algo que sólo detectaremos con análisis multivariables. Pero este sencillo algoritmo puede ayudarnos a conocer mejor algunas variables que deseamos introducir en nuestro modelo.

Trucos SAS. Variables dummy de una variable continua

Dumificar es crear variables dummy. Un verbo completamente inventado pero que todos los que os habéis enfrentado a la creación de una tabla de entrada para realizar modelos estadísticos vais a entender perfectamente en que consiste. Dumificar es transformar una variable continua en N variables dicotómicas. Lo entenderemos mejor con un ejemplo gráfico:

dumificar.JPG

En el ejemplo partimos de 8 registros y creamos 4 variables dicotómicas en función de una variable importe. Hemos dumificado la variable importe en 4. Parece fácil de entender el concepto. Bien, pues esto es lo que planteo hacer con SAS. La metodología que voy a emplear es la de siempre, parto de un dataset aleatorio con un identificador y un campo importe que pretendemos transformar en 5 variables (0,1). Para realizar este proceso necesitamos una macro que cuenta las observaciones de un dataset, ya la planteé con anterioridad en otro artículo del blog. De todos modos os dejo completo el código que empieza:

Trucos SAS. Informes de valores missing

A continuación os planteo como truco SAS una duda que nos mandaba LILIANA. Ella necesitaba estudiar los valores perdidos de las tablas de una librería determinada. En este caso vamos a estudiar los missing de las variables numéricas de una librería, de forma análoga se puede hacer con las alfanuméricas. Como siempre vamos a trabajar con un ejemplo que parte de tablas generadas aleatoriamente. Comenzamos generando estas tablas:

libname datos "c:\temp\datos";
%macro aleatorios;

%do i=1 %to 5;

data datos.proyecto_&i.;

do id=1 to 200;

 if int(ranuni(0)*10) = 2 then importe1=.;

 else importe1=round(rand("uniform")*1000,.1);

 if int(ranuni(0)*10) > 0.3 then importe2=.;

 else importe2=round(rand("uniform")*130,.1);

length zona $15.; if ranuni(0) <=.32 then zona=“España”; else if ranuni(1) <= 0.32 then zona=“Cataluña”; else zona=“Resto”;

Trucos Excel. Trasponer con la función indirecto

Una de las tareas más comunes en Excel es la de transponer filas. En ocasiones hemos de transformar columnas en filas o viceversa:

indirecto.JPG

Es muy habitual copiar y pegar transponiendo pero esta labor es muy manual cuando manejamos hojas con gran cantidad de fórmulas y que pueden generar informes automáticos. Para transponer contamos con la ayuda de la función INDIRECTO de exce. En la ayuda se define como:

« Devuelve la referencia especificada por una cadena de texto. Las referencias se evalúan de inmediato para presentar su contenido. Use INDIRECTO cuando desee cambiar la referencia a una celda en una fórmula sin cambiar la propia formula »

Estudiad idiomas

Análisisydecisión nació como un blog dedicado a la formación de profesionales en el mundo de la inteligencia de negocio y la minería de datos. Poco a poco se ha ido transformando y junto con las secciones dedicadas a la formación sobre aplicaciones estadísticas y metodologías hay breves artículos de opinión. Bueno pues este mensaje es ambas cosas, un artículo de opinión y una sugerencia sobre el futuro de los buenos gestores de información:

Monográficos. CALL SYMPUT imprescindible

He detectado que muchas búsquedas que llegan a Análisis y Decisión vienen por la palabra clave «call symput». Por este motivo me he decidido a escribir este rápido monográfico sobre esta instrucción. Con un par de ejemplos podemos familiarizarnos con su funcionamiento.CALL SYMPUT es una rutina de SAS que nos permite crear macro variables durante la ejecución de un paso data, digamos que es un mecanismo que comunica el compilador del macro lenguaje SAS con el propio lenguaje SAS. El ejemplo prototípico de su uso, determinar el número de observaciones de un dataset que cumplen determinada condición:

Experimento. Un préstamo personal para invertir en Bolsa.

¿Pedir un préstamo para invertir en bolsa? Si. Vamos a crear este experimento. Evidentemente todo se quedará en eso, un experimento, porque no será este que escribe el que hará semejante (¿)locura(?). Los mercados están en mínimos históricos, en concreto el IBEX 35 a fecha 09.02.2008 13:48 horas está a 8.492,40 La evolución en el último año ha sido:

bolsa20090209.bmp

Da miedo invertir en renta variable pero nosotros planteamos un reto. La hipótesis de partida: La bolsa en 3 años sube más de un 15%; confiamos en ello y solicitamos un préstamo personal de 10.000 euros a ese interés a pagar en 3 años. Con un 2% de comisión de apertura la cuota mensual del préstamo a 36 meses que hemos de asumir será de 354 euros, el importe total a pagar será de 12.730 euros. Disponemos de 10.000 euros para nuestra cartera de acciones, no vamos a diversificar el riesgo para facilitar el seguimiento. Compramos acciones del Banco Santander que cotizan a 6,04 euros, compramos en total 1.600 títulos para quedarnos en cuenta con 336 euros para posibles gastos.

Trucos SAS. Lista de datasets en macro variable

Un uso frecuente del proc sql es la generación de macro variables. En este ejemplo vamos a crear una macro variable con el nombre de los dataset de una librería SAS que empiecen por un determinado sufijo. También es un ejemplo bastante práctico del uso de las vistas de SASHELP. Creo que es un ejemplo bastante sencillo y sobre él iremos generando nuevos trucos que espero puedan serviros. Para entender mejor el truco vamos a generar 20 ficheros “ficticios” con variables aleatorias en el directorio c:\temp de nuestro PC:

Si buscamos sexo no buscamos trabajo

«Internáuticamente» hablando cuando buscamos sexo no buscamos trabajo, no lo digo yo, lo dice Google Trends. Observemos que ocurre si comparamos las búsquedas de la palabra sexo frente a trabajo:

sexo-versus-trabajo.JPG

Es mas que evidente la alta correlación negativa entre las búsquedas de sexo y las búsquedas de trabajo. En 2009 se espera un baby boom. En 2009 todos estaremos buscando trabajo. ¿Una incongruencia? Por cierto, se busca mucho más sexo que trabajo.

Manual. Curso introducción de R. Capítulo 14: Introducción al cálculo matricial con análisis de componentes principales

Para el trabajo con matrices vamos a emplear un análisis de componentes principales. El análisis de componentes principales puede encuadrarse dentro del conjunto de técnicas multivariantes conocidas como métodos factoriales (también se incluyen el análisis de factores y el análisis de correspondencias). Pretendemos sintetizar un gran conjunto de datos, crear estructuras de interdependencia entre variables cuantitativas para crear unas nuevas variables que son función lineal de las originales y de las que podemos hacer una representación gráfica. El objetivo del análisis de componentes principales será el reducir la dimensión de un conjunto de p variables a un conjunto m de menor número de variables para mejorar la interpretabilidad de los datos.