R_GIS_PYTHON

Tanto R y Python comparten varias similitudes. Ambos son lenguajes de programación que se encuentran integrados en softwares SIG libre y SIG propietario. En esta entrada vamos a ver cómo se integra R un SIG y como se pueden combinaran ambos lenguajes en SIG.

Por Eric van Rees

¿Qué es R?

El proyecto R para Computación Estadística, o simplemente R, es un entorno y un lenguaje de programación para generación de estadísticas y gráficos, que se compila y se ejecuta en una amplia variedad de plataformas UNIX, Windows y MacOS. Además del programa de base, hay más de 6.000 paquetes disponibles aportados por la comunidad, incluyendo una serie de métodos estadísticos de análisis de datos espaciales.

R es también un lenguaje de programación ampliamente utilizado por estadísticos y especialistas en minería de datos (Data Mining) para el desarrollo de software y análisis de datos. Durante los últimos años las empresas proveedoras de tecnología han descubierto el enorme potencial de R y ofrecen productos basados en R o que incorporan R.

¿Cómo está integrado R en SIG?

Normalmente, los usuarios hacen uso de R dentro de una interfaz de línea de comandos o un software basado en GUI como RStudio. Antes de la integración de R dentro de un SIG, se tenían que instalar paquetes adicionales para poder trabajar con datos geoespaciales. Hoy en día, tanto SIG libre y SIG propietario ofrecen acceso a potentes herramientas estadísticas de R.

R_ArcGIS

Si bien la integración de R fue ofrecida por QGIS hace ya algún tiempo, Esri anunció el pasado año la librería puente entre R y ArcGIS, un paquete gratuito de código abierto, el cual permite a ArcGIS y R acceder a los datos de forma dinámica sin crear archivos intermedios en el disco. Los programadores con experiencia en R y ArcGIS pueden crear herramientas y cajas de herramientas que integran ArcGIS y R, para uso interno, o para compartir con los demás, ya sea dentro de su organización o fuera de la misma con otros usuarios de ArcGIS .

Combinando el poder de ambos

A pesar de su creciente popularidad, R presenta una serie de deficiencias que detallamos a continuación:

Los críticos han señalado que R no aborda temas como el rendimiento, la escalabilidad y la integración en los sistemas IT en la empresa. Esto se debe a que R solo se puede ejecutar a través de un único procesador, lo que reduce la velocidad de análisis. Además R no tiene la capacidad para ejecutarse a gran escala y no es apto para el análisis de Big Data, puesto que a medida que se procesan los datos en la memoria, esto puede limitar al volumen que es posible procesar. Por último, se dice que R es demasiado técnico, por lo que es un lenguaje difícil de aprender para aquellos que desconozcan programación.

Es aquí donde aparece Python que fue considerado una como una implementación para solventar las deficiencias de R durante mucho tiempo y sin embargo Python posee un alcance mucho más amplio que R. Algunas personas abogan por combinar los dos lenguajes para conseguir lo mejor de ambos y la elección siempre dependerá del problema que se desea resolver y de las preferencias personales. Por ejemplo, si tienes ambos, R y Python, instalados en el mismo equipo, puedes hacer uso directamente de la funcionalidad de R en Python. Otro ejemplo de combinación es PANDAS, una herramienta de análisis de datos de Python que incluye un objeto de DataFrame que se comporta de manera similar al objeto R del mismo nombre. El acceso a través de Python a R es también posible mediante el uso de un módulo llamado rPython.

 

Estos temas y otros de carácter más avanzado son los que vemos en nuestro curso de GIS Data Science