Mi blog personal sobre investigación y divulgación
Tag Archives: estadística
De MATLAB a R

Desde hace muchos años trabajo en MATLAB. Comencé en IDL, que es muy similar, pero luego fue necesario adaptarme al lenguaje de programación que usaban (y usan cada vez menos) en el que por aquel entonces era mi nuevo centro de trabajo.

MATLAB es un entorno muy potente para trabajar con grandes cantidades de datos. Puede usarse en Windows, Mac y Linux, aunque en alguna ocasión me he encontrado con alguna pequeña diferencia en las versiones de Windows y Mac, teniendo que hacer pequeñas adaptaciones a scripts que ya tenía hechos. En este blog he escrito varias entradas relacionadas con MATLAB, y hasta ahora no había sentido la necesidad de cambiar de lenguaje de programación (si es que a estos paquetes estadísticos donde trabajamos con scripts se le puede llamar “lenguaje de programación”). El caso es que MATLAB, frente a sus competidores, tiene algunas desventajas muy llamativas que me han invitado a probar con otros. La gran desventaja es que es de pago, con un precio muy elevado, mientras que otros como OCTAVE o R son gratuitos. Por otro lado, y esto puede ser ya cuestión de gustos personales, las gráficas y mapas que se generan con MATLAB me parecen horrendas. Otra desventaja es que puedes necesitar una toolbox en MATLAB que no tienes instalada, o que no existe en la versión que tú estás utilizando, y entonces empiezan los problemas. Un detalle más: guardar una gráfica de MATLAB como fichero gráfico no es más que esperar a que el propio programa haga una captura de pantalla, por lo que esa captura depende de la configuración de tu tarjeta de vídeo + pantalla. Generar una misma gráfica (o un mapa) con el mismo script pero en dos ordenadores distintos puede dar resultados diferentes. Eso me parece una chapuza.

Tomar una decisión sobre qué otro lenguaje usar no fue difícil, pues la tentación estaba muy cerca. Algunos de mis colegas ya se habían pasado hace tiempo a R. Me gusta el resultado de las salidas gráficas que consiguen. La sintaxis de este lenguaje no parece muy difícil si ya se está familiarizado con otros lenguajes. Además, es gratis, multiplataforma, y hay una gran comunidad de usuarios en internet. Traducir mis scripts de MATLAB a R me parece una pérdida de tiempo, pero tener que abordar un problema nuevo sí es una buena excusa para empezar en R. Este es el caso y por fin lo he instalado y estoy tratando de correr mis primeros programas. También instalé un IDE, el RStudio (también gratis y multiplataforma), para que el entorno me sea un poco más familiar y contar con unas cuantas funcionalidades interesantes.

R Studio

Pues eso, de la directora de “Me olvido de Windos y me paso a Linux” llega la nueva entrega “De MATLAB a R”. ¡A ver en qué termina la película! 🙂

Tendencias que parecen lineales, pero no lo son

A medida que vas teniendo más experiencia en mostrar datos te das cuenta de la importancia que tiene el elegir la mejor manera de representarlos en una gráfica. La escala, los colores, los símbolos que representan los puntos, las curvas de ajuste, las leyendas…. todo tiene que hacerse de la manera más apropiada para que el lector entienda, de un solo vistazo, lo que queremos mostrar.

(Imagen de: Ciencia Activa).

Una vez representados los datos, un problema típico es elegir cuál es la forma de la curva de ajuste a una serie de puntos. Aveces, por simple inspección visual, nos da la impresión de que la nube de puntos se va ajustar muy bien a una recta. En ese caso elegimos un ajuste lineal, calculamos la bondad del ajuste a través de R^2 y si el valor es bueno nos quedamos satisfechos. Sin embargo aveces, aunque nuestra vista y el valor R^2 parezcan confirmarlo, el ajuste lineal no es la respuesta.

En el blog Topologic Oceans hay un post muy interesante sobre este tema, titulado “Graphing Out Loud: curves and lines“. En este artículo se habla del curioso caso de las series temporales de CO2 claramente manipuladas por el autor del blog C3Headlines en esta entrada. En C3Headlines, un blog que podríamos catalogar facilmente como “negacionista” en asuntos de Cambio Climático, tratan de echar un cable al autor de el todavía más conocido blog negacionista Watts Up With That?, acerca de este artículo donde su autor pone en duda (como siempre), los resultados publicados en un trabajo científico. El trabajo en cuestión es el paper titulado “Evidence for super-exponentially accelerating atmospheric carbon dioxide growth“, de Andreas D. Hüsler y Didier Sornette (Atmospheric and Oceanic Physics, 2011). Hüsler y Sornette llegan a la conclusión de que existe un crecimiento exponencial y acelerado de las concentraciones de CO2 en la atmósfera, pero los blogueros de Watts Up With That? y C3Headlines quieren hacer ver que los expertos no tienen razón y el crecimiento de las concentraciones de CO2 es simplemente lineal. Para ello en C3Headlines lo que hacen es representar los datos de una manera muy dudosa: por un lado, en vez de representar la serie de promedios anuales, eligen representar la serie de promedios de los meses de enero. El por qué solo usan los datos de enero pero en el título de la gráfica no lo aclaran (solo ponen Monthly CO2 ppm levels since late 1958) es todo un misterio que ya nos puede hacer pensar mal (¿quizás los datos de los meses de enero son los que muestran un comportamiento aparentemente más lineal de la serie?).

Ahora la cuestión clave es fijarse en el ajuste lineal marcado con una líne roja sobre los puntos grises. En la pequeña gráfica que se incluye en la parte superior izquierda se nos muestra cómo se vería un ajuste lineal (en rojo) y un ajuste exponencial (en verde). A simple vista la serie temporal mostrada parece asemejarse más a la línea roja, luego…el ajuste es lineal. Además, el R^2 es de 0.986, muy bueno, así que ya no hay dudas de que el ajuste lineal es el mejor. Pero, tal y como apunta el autor de Topologic Oceans, hay un pequeño problema Read More…