Вы находитесь на странице: 1из 3

El lenguaje R aplicado a la Inteligencia de

Negocio: una poderosa herramienta de Software


Libre para el desarrollo de soluciones
José Miguel Avendaño Infante
Postgrado de Ciencias de la Computación, Facultad de Ciencias,
Universidad Central de Venezuela
javenda@gmail.com

Abstract: R es un poderoso lenguaje de


programación implementado como software libre II. USO ACTUAL
Este lenguaje se ha convertido en uno de los más
inicialmente orientado a usuarios del mundo de la
usados en lo concerniente a los datos, llegando a estar paralelo
estadística. Con el transcurso del tiempo se ha al Python en cantidad de usuarios para dicha finalidad. La
vuelto una de las principales opciones para el encuesta anual hecha por el sitio de internet KDnuggets en
procesamiento de los datos trayendo de manera 2018 lo sitúa como el tercer software con más usuarios en la
implícita que los avances alcanzados sirvan para comunidad de analítica, ciencia de datos y aprendizaje
distintas áreas del conocimiento siendo una des automatizado [2] . Puede ser instalado en los sistemas
operativos Linux, Windows y MacOS. La versión más
estas la Inteligencia de Negocios donde se reciente disponible es la 3.5.2 .
identifican grandes potencialidades para ser
usado como una herramienta para los procesos A. Comunidad R
de Extracción, Transformación y Carga (ETL), la El lenguaje R funciona con la filosofía de software
construcción de cuadros de mando (dashboards), libre con código abierto lo que hace que los desarrollos y
aplicaciones que se implementan son altamente contributivos
visualizaciones y funcionalidades de minería de entre la comunidad de usuarios.
datos, ahorrando costos en adquisición de Los usuarios pueden crear paquetes que faciliten la
licencias y dando una gran libertad al usuario en ejecución de procesos. El sitio de internet www.r-project.org
moldear el producto acorde a sus necesidades. es el principal repositorio de desarrollos que se distribuyen en
forma de paquetes. Actualmente sólo en este sitio se
encuentran más de trece mil paquetes que abarcan distintas
I. EL INICIO: DESPUÉS DE S VIENE R
utilidades como pueden ser procesamiento de datos crudos,
El lenguaje R inicialmente estaba destinado
graficación de mapas, algoritmos de aprendizaje automatizado
principalmente a la manipulación, simulación, cálculo y
entre muchos otros. Igualmente existe una diversidad de sitios
graficación de datos [1]. Sus orígenes se encuentran en la
donde se almacenan otros paquetes pudiendo citar la página
implementación de una versión libre del lenguaje de
del proyecto Bioconductor que contiene paquetes que son
programación S el cual se orientaba a cálculos estadísticos.
usados en la investigación del genoma [3] . Es importante que
El proyecto R fue iniciado por Robert Gentleman y
sepamos que todos estos paquetes están disponibles para libre
Ross Ihaka del departamento de Estadística en la Universidad
uso de la comunidad de manera libre y sin ninguna
de Auckland en 1995. El desarrollo de R funciona en
correspondencia de pago .
simultáneo como un software y lenguaje de programación.
R es distribuido bajo los términos del GNU General
B. Entornos de desarrollo ; R-Studio
Public Licence (Licencia Pública General de GNU)
Para este lenguaje se disponen pocas opciones de
garantizando la libertad de usar, copiar y modificar el
entorno de desarrollo integrado (IDE) siendo algunas de ellas:
software.
1) R Studio
Que su sintaxis resulte sencilla y directa para el
2) Eclipse
usuario final, el entorno de desarrollo en que se ejecuta, sus
3) Visual Studio for R
velocidades de procesamiento, que sea un lenguaje
interpretado, lo que lleva a que al tipear un comando sea
La primera de las opciones es la más conocida y es
directamente ejecutado sin la necesidad de construir-compilar
ampliamente usada por la facilidad que representa la
completo el programa, entre otros factores, han hecho que
visualización de todo el entorno de paquetes, variables,
este lenguaje haya ganando adeptos para muchos usos que van
consola y editor para el usuario. Este entorno de desarrollo fue
más allá de la estadística, siempre y cuando su aplicación
lanzado en 2011 y pertenece a la compañía rstudio.inc . Sus
tenga que ver con el procesamiento de datos.
versiones para usuario final son libre y de código abierto,
aunque también ofrecen versiones para ser instaladas en gran cantidad de opciones para hacer las transformaciones y
servidores de la propia compañía que sí tienen costos limpieza de los datos obtenidos con altos niveles de exigencia
asociados. y rendimiento.
Todas las transformaciones clásicas es posible
Particularmente este IDE representa un tópico de realizarlas como joins, uniones e intersecciones,
gran interés para esta investigación ya que el software permite concatenaciones, procesamiento de expresiones regulares
la ejecución exclusiva de una serie de paquetes que facilitan la -regex-, filtros, etc.
generación de tableros y cuadros de control que en conjunto El almacenado de los datos procesados también
con gráficas constituyen los dashboards que serán abordados queda claro que es posible ejecutarlo en este lenguaje.
más adelante en este trabajo.
B .Visualizaciones:
III. R PARA INTELIGENCIA DE NEGOCIOS Una de las mayores fortalezas que presenta este
Si entendemos la Inteligencia de Negocios (I.N.) como el lenguaje son las representaciones gráficas que se pueden hacer
conjunto de procesos mediante los cuales buscamos extraer ya que cuenta con varios sistemas gráficos altamente
conocimiento de los datos para convertirlos en información desarrollados.
que de sustento a la toma de decisiones por parte de los El uso de diversos paquetes facilita la generación de
gerentes de una organización podemos proyectar que el reportes permitiendo visualizar roll ups y drill downs y
lenguaje R representa una sólida opción en los procesos que semejantes operaciones de agregación o disgregación de
se incluyen dentro del área de la Inteligencia de Negocios. datos.
Hay que ser muy enfáticos en aclarar que la implementación Exportar los reportes a distintos formatos o su
de cualquier proceso de I.N. será muy distinto a como se hace visualización en entorno web son otros de los recursos con
en las plataformas tradicionales como por ejemplo Pentaho, que cuenta este lenguaje.
Tableau, Power BI, ya que este tipo de softwares en gran
medida facilitan al diseñador y programador de la solución
una gran cantidad de pasos mediante las herramientas de IV. APLICACIONES EN R, EL NEGOCIO DE LA
programación visual o métodos similares los cuales difieren INTELIGENCIA DE NEGOCIOS
radicalmente del proceso que se tendría que ejecutar en R. El hecho de que este software sea libre abre diversas
opciones para el desarrollo de soluciones y aplicaciones para
Sin embargo las potencialidades de este lenguaje las empresas en el área de desarrollo informático en el campo
permiten que todos los requerimientos del usuario final de la inteligencia de negocios. Es viable la obtención de
puedan ser moldeados para dar cumplimiento a los demandas ingresos para una empresa de software tanto en el desarrollo
más exigentes, ya que R cuenta con la capacidad de efectuar como en el mantenimiento de las aplicaciones. A diferencia de
todos los procesos necesarios y por la gran comunidad de algunos usos que se le puede dar a R para estudios puntuales
desarrolladores con que cuenta todo el tiempo se están sobre distintas variables, la implementación de soluciones en
creando nuevas funcionalidades. este campo implican el acompañamiento a la organización que
la adopta e igualmente el mantenimiento, adaptaciones y
Al adoptar R como la base sobre la que se desarrolle mejoras al sistema donde claramente también estará incluido
la solución de negocio se hará necesario que en el equipo de el Dataware House.
trabajo se incluyan expertos en la programación de este
lenguaje. Posiblemente también sea necesario complementar V. PAQUETES R DE UTILIDAD PARA LA I.N.:
con otro lenguaje como PHP o Python algún requerimiento A. Tidyverse: es una colección de paquetes que permiten
que R no sea capaz de procesar pero sí de integrarse con estos generar una gran cantidad de procesos que inician con la carga
otros recursos. de los datos, las transformaciones que sean requeridas,
almacenamiento en formatos que R maneja de manera más
A continuación vamos a listar los procesos de la I.N. eficiente y las visualizaciones. Ha sido desarrollado por el
en los cuales R puede ser usado. mismo equipo de Rstudio.inc. Todos estos paquetes usan una
gramática similar para darle coherencia a todo el proceso que
A. ETL-Extracción, Transformación y Carga sea ejecutado. Esta colección está compuesta por: ggplot 2
La extracción de datos en R es viable ya que permite (creación de gráficos), dplyr (manipulación de datos), tidyr
la conexión con las más usadas bases de datos en Oracle, (organización de los datos), readr (lectura de archivos), purr
mySQL, mariaDB, Postgree. El desarrollo de múltiples (uso de funciones y vectorizaciones para remplazar loops),
paquetes da diversas opciones que permiten la conexión y tible (almacenamiento de datos), strinr (procesamiento de
extracción deseada [4]. expresiones de textos) [6].
También es capaz de procesar una gran cantidad de
tipos de archivos que contengan datos como los provenientes B. Shiny: es un paquete que permite generar aplicaciones web
de excel, csv y cualquier otro estándar. interactivas con visualización de reportes, tablas y gráficos en
Posteriormente a la extracción este lenguaje tiene una el navegador web y permite al usuario interactuar con los
datos disponibles. Puede ser alojado bajo la modalidad stand- VII. CONCLUSIONES
alone o en un servidor [7]. R con toda claridad es un lenguaje que puede usarse en la
Inteligencia de Negocios pudiendo brindar múltiples
C. Radiant: basado en shiny incrementa las potencialidades en beneficios a los usuarios, no obstante es necesario que tanto
la visualización y procesamiento interactivo con el usuario de lops desarrolladores de aplicaciones en principio, como los
los datos ya que se destina principalmente a la analítica de usuarios finales entiendan las ventajas y desafíos que plantea
negocios [8]. el uso de R.
Para nuestro país o en situaciones presupuestarias de
D. mssqlR: conexiones a distintas bases de datos con sintaxis empresas donde los recursos financieros son reducidos el
de MySQL Server [9] lenguaje R es una alternativa de bajo coste y alta eficiencia.
Para los desarrolladores de aplicaciones R también
E.. knitr: generación de informes constituye una posible fuente de ingreso a la que se le puede
sumar el mantenimiento de las plataformas que se
VI. FRONTERA implementen.
Una vez realizados los clásicos procesos que
constituyen la I.N. El lenguaje R puede fácilmente ejecutar REFERENCIAS
procesos que siguen de forma natural para cualquier [1] W.J. Owen, The R Guide Version 2.5, Department of Mathematics and
organización que haya consolidado su plataforma. Podemos Computer Science, University of Richmond, 2010.
mencionar los siguientes procesos: [2] Piatetsky, Gregory (2018) the 19 th anual Kdnuggets software pool
[online] Avaible: https://www.kdnuggets.com/2018/05/poll-tools-analytics-
A. Minería de datos data-science-machine-learning-results.html
1) Análisis de segmentos: implementar algoritmos de [3] (2019) Bioconductor Project. avaible: https://www.bioconductor.org
segmentación con los que se pueda entender cómo se [4] Gendron, Jay, Introduction to R for Business Intelligence, Packt
componen las agrupaciones por ejemplo de clientes de una Publishing, 2016.
[5] Barry Dwight,Business Intelligence with R, 2016.
empresa. Saber cuáles clientes se parecen más unos que con [6] (2019) Tidyverse: a collection of R packages .Avaible:
los otros. https://www.tidyverse.org/
2) Regresiones lineales: por medio de estos procesos [7] (2019) Shiny: a R package for buid web apps. Avaible:
de la estadística realizar predicciones sobre los valores que https://shiny.rstudio.com/
[8] (2019) A brower-based interfaced for Business Analytics. Avaible:
pueda tener una determinada variable en el tiempo. http://vnijs.github.io/radiant/
3) Clasificaciones : para determinado problema de [9] (2019) A R package for query data from Mysql Server. Avaible:
una organización donde sea necesario mediante una serie de https://cran.r-project.org/web/packages/mssqlR/index.html
características, atributos, lograr efectuar una clasificación de
un ejemplo nuevo.

B. Big Data
R permite conectarse a servidores de las grandes
companías del cloud computing para ejecutar procesos
paralelos y distribuidos que funcionen en ambientes hadoop o
similares lo que brinda otra fortaleza en el escalamiento de las
necesidades de la organización.

Вам также может понравиться