El lenguaje R ha mostrado un crecimiento notable en los últimos cinco años.
Encontramos en una publicación anterior que Python afirma ser el lenguaje de programación de más rápido crecimiento en términos de visitas de desbordamiento de pila.
De hecho, el lenguaje R está creciendo a un ritmo similar al de Python en términos de un porcentaje año tras año, aunque este crecimiento es “más fácil” porque comenzó a partir de una menor proporción de tráfico.

En otro post , encontramos que gran parte del crecimiento de Python puede explicarse por la expansión de la ciencia de datos. Dado que el lenguaje R se utiliza principalmente para el análisis estadístico, es probable que R sea parte de la misma tendencia.
En esta publicación, analizaremos qué tan rápido ha crecido R, examinaremos cómo difiere su crecimiento en las diferentes industrias y veremos qué paquetes del lenguaje R son populares y están creciendo dentro del ecosistema.
Al igual que Python, una cantidad desproporcionada de tráfico hacia las preguntas del lenguaje R proviene de países de altos ingresos (se visita aproximadamente tres veces más en esos países que en el resto del mundo), por lo que esta publicación considerará el tráfico de desbordamiento de pila de los países de altos ingresos , como Estados Unidos, Reino Unido, Alemania, Canadá y Francia.
Como un descargo de responsabilidad, observaremos que el Equipo de datos en Stack Overflow funciona principalmente en R (de hecho, lo usamos para generar casi todos los gráficos y resultados de publicaciones de Perspectivas como esta).
Crecimiento de R
Nuestra publicación anterior sobre el crecimiento de Python consideraba visitas a Python en comparación con otros cinco lenguajes de programación principales (Java, JavaScript, C #, PHP y C ++) que constituyen una parte sustancial de las visitas de preguntas de desbordamiento de pila.
El lenguaje R representa una parte más pequeña que esas etiquetas, por lo que compararemos su crecimiento con idiomas de un tamaño similar.

No tiene sentido que R esté “compitiendo” con cualquiera de estos otros idiomas, que no se utilizan normalmente para el análisis de datos.
Esta comparación se muestra solo para demostrar que el tipo de crecimiento sostenido que ha mostrado R es raro entre los idiomas de tamaño comparable.
Las preguntas de tráfico a C muestran un fuerte patrón estacional (ya que es una de las opciones más comunes para las clases de programación de pregrado), y R casi ha alcanzado ese nivel de tráfico.
Las visitas a las preguntas de Swift crecieron rápidamente después de que Apple introdujera el lenguaje en 2014, pero desde entonces se han estabilizado.
Typcript, aunque sigue siendo una fuente de tráfico más pequeña, ha mostrado un crecimiento bastante notable y será objeto de algunos análisis futuros.
Como vimos en una publicación anterior , el tráfico a Ruby y especialmente a Objective C ha ido disminuyendo con el tiempo.
Proyectar el crecimiento futuro de las visitas de desbordamiento de pila puede ser complicado, pero según un modelo STL es razonable predecir que R será la séptima etiqueta de lenguaje de programación más visitada de los países de altos ingresos en 2018, después de Python, Java, JavaScript, C #, PHP , y C ++.
Por industria
¿Qué industrias visitan R preguntas más? (Este análisis está restringido a los Estados Unidos y el Reino Unido, los países en los que podemos segmentar nuestro tráfico por industria).
R es la más visitada de las universidades, donde es una opción común para la investigación académica, especialmente en las ciencias sociales y la biología. De hecho, en junio-julio de 2017, cuando la mayoría de las clases no están en sesión, R fue la segunda etiqueta más visitada de las universidades, superada solo por Python.
La industria con el segundo mayor porcentaje de visitantes de R, por un margen cercano, es la asistencia sanitaria. Es probable que eso no sea una sorpresa para los bioestadísticos, ya que R es la herramienta elegida para muchos métodos estadísticos necesarios para los estudios clínicos y la bioinformática.
Una industria que no visita una gran cantidad de R, en relación con otras tecnologías, es la tecnología:
Software y compañías web. (¡El equipo de datos aquí en Stack Overflow es una excepción!).
Esto se debe en parte a que el análisis de datos constituye una parte relativamente pequeña de las visitas de Overflow de pila de la industria, en comparación con el software y el desarrollo web.
Descubrimos por separado que pandas , un marco de ciencia de datos para Python, fue menos visitado en tecnología que en casi todas las demás industrias. Pero sí sugiere que la forma en que usamos R en nuestro equipo no es el caso de uso típico del idioma.
Vimos que la tasa de crecimiento de Python ha sido aproximadamente igual en todas las industrias que podemos medir. ¿En qué industrias está creciendo más rápido R ?

R no se está reduciendo en ninguna industria, pero las visitas a R en general están creciendo más rápido en industrias donde ya se visitaba con mayor frecuencia , lo que incluye un crecimiento muy rápido en el mundo académico y en la atención médica.
Este gráfico también confirma lo que vimos en un análisis anterior , que R se visita de manera desproporcionada y crece rápidamente en el sector gubernamental. También vemos que es relativamente usado y se está expandiendo en consultoría y seguros.
Cada una de estas son industrias donde el análisis y la visualización de datos desempeñan un papel desproporcionado, en relación con el software y el desarrollo web.
Una de las áreas donde no vemos mucho crecimiento es la tecnología, que confirma que la mayor parte de la expansión de R parece estar ocurriendo fuera del software y la industria web.
Dado que en esa industria vimos un aumento en las visitas a los marcos de ciencia de datos de Python como pandas y NumPy, es una conclusión razonable que Python se está convirtiendo en una opción más popular para la ciencia de datos dentro de esas compañías.
Paquetes del lenguaje R
En el caso de Python, estábamos interesados en qué aplicaciones particulares del lenguaje habían impulsado su crecimiento, como la ciencia de datos, el desarrollo web y la administración de sistemas.
R es un misterio menor:
su propósito principal siempre ha sido el análisis estadístico, el aprendizaje automático y la visualización de datos. Pero todavía estamos interesados en qué tendencias están sucediendo dentro del ecosistema R
Para examinar esto, extrajimos qué paquetes R se usaron en preguntas y respuestas particulares. Extrajimos esto de nuestro conjunto de datos de Preguntas R públicas alojado en Kaggle, que contiene todas las preguntas y respuestas (no eliminadas) con la etiqueta R.
Este núcleo de Kaggle muestra cómo analizamos los datos, incluido el examen de los usos de las funciones library()y require().
¿Cuáles fueron los paquetes más utilizados en todas las preguntas y respuestas de R existentes?

Muchos de los paquetes que se mencionan con mayor frecuencia fueron escritos por Hadley Wickham, con sus paquetes que conforman 7 de los 10 principales (los otros son data.table, shiny y zoo). Vale la pena señalar que esta métrica puede inclinarse hacia los paquetes más confusos en lugar de simplemente los más utilizados.
Sin embargo, ejecutar esto en los paquetes más comunes mencionados en las respuestas , no solo en las preguntas, lleva a una lista muy similar (¡puedes intentarlo tú mismo !), Lo que significa que es una representación razonablemente fiel de los paquetes que los desarrolladores R encuentran útiles en su trabajo.
Estos datos también nos pueden dar una idea de los paquetes de más rápido crecimiento. Lo mediremos a lo largo del tiempo en términos del porcentaje de preguntas donde la pregunta menciona el paquete o una de sus respuestas.
Como las preguntas de R en general son cada vez más comunes, estamos examinando los cambios solo como una parte del ecosistema de R : la mayoría de estos paquetes están creciendo en términos de números brutos.

(Tenga en cuenta que en algunos casos muy raros, los paquetes se editaron en preguntas o respuestas anteriores, lo que les permite “aparecer” antes de que se lanzara el paquete).
Podemos observar algunas tendencias en el uso de paquetes R Por ejemplo:
- ggplot2 siempre ha estado involucrado en una parte sustancial de las preguntas y respuestas, aunque su frecuencia ha disminuido ligeramente desde los primeros años del sitio.
- Los paquetes data.table y especialmente dplyr mostraron un rápido crecimiento durante la vida útil de Stack Overflow, que se ha estabilizado en los últimos dos años. El marco web interactivo Shiny también ha mostrado un crecimiento sustancial desde su introducción en 2012.
- Podemos ver cambios en herramientas comunes para resolver problemas. Los paquetes plyr y reshape2 aumentaron en frecuencia de aproximadamente 2009 a 2013, y luego disminuyeron cuando Wickham los reemplazó con los paquetes más nuevos de dplyr y tidyr.
- Los paquetes más antiguos como zoo, xml y grid han sido constantes o han disminuido lentamente como parte de las preguntas.
Otra forma de visualizar el crecimiento es disponer los paquetes de R en una red , en función de qué pares de paquetes tendían a usarse en las respuestas de desbordamiento de pila en las mismas preguntas. Esto da una idea de qué grupos de paquetes tienden a resolver problemas similares.
¿Qué áreas del desarrollo de paquetes de R han aumentado recientemente en su parte de preguntas y respuestas?

Esto establece el ecosistema de paquetes del lenguaje R basados en unas pocas subredes más pequeñas. Los paquetes de visualización generalmente terminaron en la parte inferior izquierda, dividiéndose en tres grupos: gráficos de cuadrícula (centrados alrededor de ggplot2), visualización geográfica (incluidos los paquetes sp, maps y maptools) y visualización interactiva (con brillantes, gráficos, DT y htmlwidgets inventados) algunos de los nodos mas notables).
En el centro del ecosistema vemos un clúster para la transformación de datos, que incluye dplyr, data.table y purrr. Otros grupos se caracterizan por la manipulación del texto (stringr, tm), la optimización del rendimiento (Rcpp, microbenchmark) y las series de tiempo (lubridate, zoo).
Según la definición que elegimos, la mayoría del “crecimiento” se centra en los paquetes más nuevos que tienen mucho espacio para crecer, como el paquete tidyverse (presentado solo el año pasado).
Eso significa que las regiones azules del ecosistema no representan áreas “estancadas”, sino regiones a las que ya se les ha hecho su parte de las preguntas.
Sin embargo, es interesante ver que, según esta definición, dos áreas principales de crecimiento en el ecosistema son la transformación de datos y la interactividad. En general, estamos de acuerdo con nuestra experiencia en la comunidad del lenguaje R de que estas son dos áreas con muchas innovaciones recientes.
Conclusión
Ya que usamos el lenguaje R en el Equipo de Datos de Desbordamiento de Pila, ciertamente disfrutamos al examinar cómo está cambiando el ecosistema R, y al ver que ha sido parte de la rápida expansión del campo de la ciencia de datos. En general, el número de usuarios de un idioma no está directamente relacionado con su popularidad. Pero la comunidad grande y de rápido crecimiento en torno al lenguaje R ciertamente ha contribuido a su valor como lenguaje de programación y como entorno de análisis de datos.
Si usa R, y está buscando dar el siguiente paso en su carrera, aquí hay algunas compañías que están contratando programadores R y científicos de datos en este momento en Trabajos de desbordamiento de pila.