Está en la página 1de 7

4. MARCO TEÓRICO.

R es un entorno y lenguaje de programación con un enfoque al análisis estadístico.

R nació como una reimplementación de software libre del lenguaje S, adicionado con soporte
para ámbito estático. Se trata de uno de los lenguajes de programación más utilizados en
investigación científica, siendo además muy popular en los campos de aprendizaje automático
(machine learning), minería de datos, investigación biomédica, bioinformática y matemáticas
financieras. A esto contribuye la posibilidad de cargar diferentes bibliotecas o paquetes con
funcionalidades de cálculo y graficación.

R es parte del sistema GNU y se distribuye bajo la licencia GNU GPL. Está disponible para
los sistemas operativos Windows, Macintosh, Unix y GNU/Linux.

4.1 CARACTERISTICAS

R proporciona un amplio abanico de herramientas estadísticas (modelos lineales y no


lineales, test estadísticos, análisis de series temporales, algoritmos
de clasificación y agrupamiento, etc.) y gráficas.

A continuación, se describe las características de R:

Funcional

Las funciones en R se pueden manipular de igual manera que los vectores. Asimismo, puedes
asignar las funciones a variables, almacenarlas en listas, devolverlas como resultados de otras
funciones o pasarlas como argumentos de otras funciones.

Orientado a objetos

El lenguaje R está orientado a objetos. R permite modelar conceptos del mundo real
relevantes a nuestro problema, representándolos como clases y objetos que podemos hacer
que interactúen entre sí.

Extensible

Los usuarios lo pueden extender definiendo sus propias funciones, aparte de las de las
numerosas bibliotecas preconstruidas que tiene. La mayor parte de ellas están escritas en R,
aunque para algoritmos computacionalmente exigentes es posible desarrollarlas en C, C++
o Fortran. Como es un proyecto colaborativo y abierto, los propios usuarios pueden publicar
paquetes que extienden su configuración básica.

Integrable

Ofrece múltiples posibilidades para atacar a datos almacenados en distintos tipos de bases de


datos. También presenta múltiples bindings y paquetes que permiten a R interactuar con otros
lenguajes (como Perl, Ruby o Python) e intercambiar objetos con ellos.
Gráficos avanzados

Existen librerías para R que permiten generar una gran variedad de gráficos, desde
la ggplot2 hasta otras más simples pero también potentes como corrplot.

Diferentes interfaces gráficas

R se puede utilizar a través de línea de comandos. Existen varios editores gráficos interesantes


que pueden funcionar en Windows, Linux y MacOS. Destacan interfaces gráficas
especialmente R Studio y R Commander.

Interpretado y no compilado

A diferencia de C, C++ ó Java, no tenemos que compilar nuestro código, sino que el intérprete
de R lo ejecuta directamente. Lo interesante es que muchas de sus rutinas más exigentes están
escritas en C ó C++, por lo que, sin darnos cuenta, se estará ejecutando código compilado en
esos lenguajes.

Basado en memoria

El lenguaje R mantiene todos los objetos que definimos en nuestro programa en la memoria
del ordenador. Por esta razón, es importante entender cómo gestiona la memoria, para poder
optimizar el código. Así se evitan copias innecesarias de objetos que pueden ralentizarlo.

4.2 FUNCIONES

Con este software se puede: estudiar correlaciones, ajustar modelos, crear gráficos 3D de
altísima calidad, aplicar árboles de decisión, realizar análisis clúster, análisis de componentes
principales, crear redes neuronales de predicción, etc.

Al igual que S, se trata de un lenguaje de programación, lo que permite que los usuarios lo
extiendan definiendo sus propias funciones. De hecho, gran parte de las funciones de R están
escritas en el mismo R, aunque para algoritmos computacionalmente exigentes es posible
desarrollar bibliotecas en C, C++ o Fortran que se cargan dinámicamente. Los usuarios más
avanzados pueden también manipular los objetos de R directamente desde código
desarrollado en C. R también puede extenderse a través de paquetes desarrollados por su
comunidad de usuarios.

Además, R puede integrarse con distintas bases de datos y existen bibliotecas que facilitan su
utilización desde lenguajes de programación interpretados como Perl y Python.

R también puede usarse como herramienta de cálculo numérico, campo en el que puede ser
tan eficaz como otras herramientas específicas tales como GNU Octave y su
equivalente privativo: MATLAB. Se ha desarrollado una interfaz, RWeka para interactuar
con Weka que permite leer y escribir ficheros en el formato arff y enriquecer R con los
algoritmos de minería de datos de dicha plataforma.

Aplicación del lenguaje R en Big Data

Finanzas

El Big Data y el análisis de datos se usan cada vez más en los últimos años en la industria
financiera. Con la utilización del lenguaje R, las entidades financieras pueden realizar
mediciones de riesgo a la baja, ajustar el rendimiento del mismo y ayudar en las
visualizaciones, creando gráficos de velas, de densidad o de reducción que sean fácilmente
entendibles por los usuarios.

R también proporciona herramientas para promedios móviles, autorregresión y análisis de


series temporales que constituyen algunos de los aspectos más importantes de las aplicaciones
financieras.

El sector financiero también está aprovechando los procesos estadísticos de series temporales
de lenguaje R para modelar el movimiento de su mercado de valores, prediciendo los precios
de las acciones. Además, proporciona el contexto adecuado para la extracción de información
financiera, a través de sus paquetes (auantmod, pdfetch, TFX, pwt, etcétera).

Banca

Las entidades bancarias también utilizan R para modelar el riesgo de crédito y otras formas de
análisis de riesgos. Los bancos hacen un uso intensivo de corte hipotecario que les permite
adjudicarse la propiedad hipotecada, en caso de incumplimiento del préstamo.

Esta operación implica la distribución del precio de venta, la volatilidad de este y el cálculo del
déficit esperado. Para estas operaciones, en muchas ocasiones, el lenguaje R se utiliza con
herramientas propietarias como SAS.

R también se puede utilizar junto con Hadoop para facilitar el análisis que establece la


“calidad” de un cliente, su segmentación y su retención para calcular su solvencia.

Asistencia sanitaria

La genética, la bioinformática, la investigación de fármacos o la epidemiología solo son algunos


de los campos de atención médica que hacen un uso intensivo del lenguaje R.

Con la ayuda de esta herramienta, estas empresas pueden procesar datos e información,
proporcionando un contexto esencial para el análisis y el procesamiento de datos adicionales.

El lenguaje R también es famoso por su paquete “Bioconductor”, que proporciona


funcionalidades para analizar los datos genómicos. En el campo de la epidemiología, los
científicos de datos utilizan esta herramienta para procesar y predecir la propagación de
enfermedades.

4.3 VENTAJAS Y DEVENTAJAS

Ventajas del lenguaje R en el tratamiento de datos

Entre sus indudables ventajas se podrían destacar las siguientes:

 Acumula, en un único programa, todo lo necesario para analizar los datos con eficacia.
Las diversas herramientas de medición de datos y de realización de estadísticas se
convierten en imprescindibles para ahorrar tiempo y esfuerzo.

 Incluye modelos lineales y no lineales usados en el sector de la estadística. Es idóneo


para la clasificación y el agrupamiento de los datos, facilitando así su posterior
interpretación.

 Los diversos operadores permiten realizar cálculos con matrices más rápidamente.


 La inclusión de gráficos permite el análisis de la información generada en menos
tiempo. Además, permite la realización de comparativas entre distintos periodos de
tiempo pudiendo conocer la evolución exacta de cada proceso con un nulo margen de
error.  También permite crear paneles de control específicos de cada sector y
automatizar la realización de informes para gestionar más fácilmente la información.

 El lenguaje de programación permite crear un código limpio que facilita la gestión de


los datos. Es posible incluir bucles, saltos condicionales y todo lo necesario para
personalizar al máximo su eficacia.

 El formato LaTeX se amolda a la documentación virtual y física con enorme facilidad.

 Es compatible con lenguajes de programación como Fortran, C o C++.

 Funciona con sistemas UNIX, Windows y MacOS.

 Fue creado por el R Development Team, pero admite la colaboración altruista de
cualquier usuario que quiera ir mejorando el lenguaje con aportaciones.

 Su uso es gratuito. Solo es necesario descargarse el programa en su web oficial.

Destacamos, igualmente, que su uso es habitual en todas las fases del análisis de datos y es de
gran ayuda en:

 La adquisición de los datos a través de bases de datos o archivos.

 La preparación de la información recopilada eliminando datos duplicados, errores en la


captación de datos y similares.

 El análisis de los datos para la creación de modelos de clasificación, predicción o


agrupamiento, entre otros.

 La elaboración de un informe con los resultados del análisis listo para su uso.

 La valoración de los resultados y la puesta en marcha de las medidas que indiquen los
modelos predictivos en comparación con los datos obtenidos en periodos anteriores.

Todas las ventajas anteriores han convertido este lenguaje de programación en uno de los más
usados por los analistas de datos.

Desventajas principales de este software

Si bien los analistas más experimentados no niegan que es de gran ayuda, también subrayan
sus desventajas, o carencias, principales:

 No soporta gráficos en tres dimensiones o dinámicos. El resultado de cada informe


puede ser algo pobre visualmente y bastante anticuado en comparación con el
ofrecido por otros programas.

 Su lentitud le resta efectividad y competitividad. Existen lenguajes de programación


más rápidos que ofrecen una capacidad de respuesta más adecuada.

 Los algoritmos no están unificados. Cada uno de ellos se almacena en un paquete


distinto, por lo que hay que ir cambiando de opción para leer los datos obtenidos.
 Su origen está en S, un lenguaje de programación bastante anticuado que no ha sabido
adaptarse a los tiempos. Otras alternativas, como Python, son más competitivas.

 Debido a la acumulación de opciones, aprender a manejarlo totalmente lleva bastante


tiempo y no siempre es fácil de alcanzar este objetivo. No es la mejor opción para
personas que no tienen cierto conocimiento previo de programación. Incluso
programadores expertos cometen errores en su uso al necesitar una formación
concreta en un lenguaje que tiene pocos puntos en común con otros con los que
comparte objetivos.

 Sus restricciones y su incompatibilidad con otros lenguajes de programación impiden


que se pueda usar para crear aplicaciones web.

 Acumula todos los datos en una única carpeta que termina ocupando demasiado
espacio en una memoria física. Esta circunstancia conlleva que sea necesario volcar los
datos de forma periódica para evitar el colapso de los dispositivos de almacenamiento.

 No tiene medidas de seguridad, por lo que es muy fácil de vulnerar por parte de los
ciberdelincuentes. Poner en riesgo la información personal de los clientes de una
empresa puede provocar la toma de medidas legales que terminen generando un serio
problema económico.

 Su actualización constante conlleva tener que aprender las características de cada


apartado continuamente. Así, el analista de los datos no siempre tendrá la seguridad
necesaria al usar un programa en evolución permanente que puede cambiar de un día
para otro.

Podría afirmarse que el uso de esta alternativa es casi para expertos, pero no es adecuado
olvidar que la capacidad para analizar datos estadísticos es siempre superior a la de otras
opciones. Para dedicarse al análisis de datos es necesario conocer todos los lenguajes de
programación existentes y elegir el que mejor se adapte a los requisitos de cada empresa.

4.4 VERSIONES DE ESTE SOFTWARE

A continuación, se enumeran algunos hitos en el desarrollo de R:

 Versión 0.16: Es la última versión alfa desarrollada esencialmente por Ihaka y


Gentleman, que incluye gran parte de las características descritas en el "White Book".

 La lista de correo comenzó su andadura el 1 de abril de 1997.

 Versión 0.49 (23 de abril de 1997): Es la versión más antigua de la que se conserva el
código (que todavía compila en algunas plataformas UNIX). En esta fecha arrancó
también CRAN con tres espejos que albergaban 12 paquetes. Poco después
aparecieron las versiones alfa para Windows y Mac OS.

 Versión 0.60 (5 de diciembre de 1997): R se integra oficialmente en el Proyecto GNU.


El código se versiona a través de CVS.

 Versión 1.0.0 (29 de febrero de 2000): Los desarrolladores lo consideran


suficientemente estable para su uso en producción.

 Versión 1.4.0: Se introducen los métodos S4 y aparece la primera versión para Mac OS


X.
 Versión 2.0.0 (4 de octubre de 2004): Introduce el lazy loading, que permite una carga
rápida de datos con un coste de memoria mínimo.

 Versión 2.1.0: Aparece el soporte para UTF-8 y comienzan los esfuerzos


de internacionalización para distintos idiomas.

 Versión 2.9.0: El paquete 'Matrix' se incluye en la distribución básica de R.

 Versión 2.11.0 (22 de abril de 2010): Soporte para sistemas Windows de 64 bits.

 Versión 2.13.0 (14 de abril de 2011): Añadida una nueva función al compilador que
permite acelerar las funciones convirtiéndolas a byte-code.

 Versión 2.14.0 (31 de octubre de 2011): Añadidos espacios de nombres obligatorios


para los paquetes. Añadido un nuevo paquete de paralelización.

 Versión 2.15.0 (30 de marzo de 2012): Nuevas funciones de balanceo de cargas.


Mejorada la velocidad de serialización para grandes vectores.

 Versión 3.0.0 (3 de abril de 2013): Mejoras en GUI, funciones gráficas, gestión de


memoria, rendimiento e internacionalización.

 Versión 3.4.0 (21 de abril de 2017): El compilador de código de bytes JIT ('Just In Time')
ahora está habilitado en el nivel 3 de forma predeterminada.

4.5 EXTENSIONES Y PAQUETES

R forma parte de un proyecto colaborativo y abierto. Sus usuarios pueden publicar paquetes
que extienden su configuración básica. Existe un repositorio oficial de paquetes cuyo número
superó en otoño de 2009 la cifra de los 2000.

Dado el enorme número de nuevos paquetes, estos se han organizado en vistas (o temas), que
permiten agruparlos según su naturaleza y función. Por ejemplo, hay grupos de paquetes
relacionados con estadística bayesiana, econometría, series temporales, etc.

Para facilitar el desarrollo de nuevos paquetes, se ha puesto a servicio de la comunidad


una forja de desarrollo que facilita las tareas relativas a dicho proceso.

Otros sistemas de software comerciales que integran con R incluyen: JMP, Mathematica,


MATLAB, Spotfire,  SPSS, Statistica, Platform Symphony, SAS, Tableau Software, Esri
ArcGis, Dundas, Statgraphics. y SQL Server 2017.

4.6 REFERENCIAS

https://es.wikipedia.org/wiki/R_%28lenguaje_de_programaci%C3%B3n%29

https://www.maximaformacion.es/blog-dat/que-es-r-software/

https://seactuario.com/ContMatematicas/SOFTWARE_R.pdf

https://keepcoding.io/blog/que-es-el-lenguaje-r/#Caracteristicas_de_R

https://www.unir.net/ingenieria/revista/lenguaje-r-big-data/

https://blogs.imf-formacion.com/blog/tecnologia/

También podría gustarte