R
Hecho por estadísticos para estadísticos, y se nota en ambos sentidos.
- Primera versión
- 1993 (1.0 in 2000)
- Creado por
- Ross Ihaka and Robert Gentleman, University of Auckland
- Tipado
- Dinámico, con vectores y no escalares como tipo primitivo
- Extensiones de archivo
- .R, .r, .Rmd
Para qué sirve
R es para hacer estadística en serio. Otros lenguajes tratan el trabajo estadístico como asunto de bibliotecas; R lo trata como su razón de ser. Los data frames, los factores, los valores faltantes y la aritmética vectorizada vienen integrados, y la notación de los modelos se lee como la notación de un paper. Si un método existe en la literatura, casi siempre hay un paquete de CRAN que lo implementa, no pocas veces escrito por la misma persona que lo publicó.
La otra mitad es la comunicación. ggplot2 sigue siendo la mejor implementación de una gramática de gráficos en cualquier lenguaje, y R Markdown y Quarto convierten el documento reproducible — código, salida y prosa en un solo archivo — en rutina y no en hazaña. Si tu entregable es un reporte, ese pipeline es difícil de superar.
La debilidad es la ingeniería. R no es el lenguaje para escribir un servicio web, su rendimiento sorprende a la gente, y hay al menos tres sistemas de objetos. La mayoría de las organizaciones terminan con R haciendo el análisis y otra cosa llevándolo a producción.
De dónde viene
Ross Ihaka y Robert Gentleman empezaron R en la Universidad de Auckland a principios de los noventa, como una implementación libre de S, el lenguaje estadístico que John Chambers venía construyendo en Bell Labs desde 1976. El nombre es un chiste doble sobre S y las iniciales de los autores. Se volvió un proyecto GNU en 1995 y llegó a la 1.0 en febrero de 2000.
CRAN abrió en 1997 y es la razón por la que R ganó su campo. Insiste en verificar cada paquete enviado contra todos los demás, en cada plataforma. Eso es fricción para los autores y un archivo inusualmente confiable para todos los demás.
El tidyverse, impulsado en gran parte por Hadley Wickham desde alrededor de 2014, creó un segundo dialecto: dplyr, tidyr, ggplot2 y el pipe, con convenciones compartidas y una filosofía de datos ordenados (tidy data). R base y el tidyverse coexisten, y cuál aprendió primero un programador de R suele notarse a simple vista.
Cómo se siente teclearlo
R tiene la pulsación más distintiva de todas: la flecha de asignación, <-, dos caracteres que tienen que caer en el orden correcto. El pipe es el otro movimiento característico, ya escribas %>% o el más nuevo |>. Y los argumentos nombrados con = hacen que pases mucho tiempo alrededor de la tecla de igual.
103 pasos en 7 tours, desde lo básico hasta programas completos.
Los tours
- Fundamentos del lenguajeEn realidad R no tiene escalares. 20 pasos.
- Data frames en R baseData frames antes de que el tidyverse entre en escena. 8 pasos.
- EstadísticaLa razón por la que R existe. 11 pasos.
- dplyrEl tour en el centro del R moderno. 27 pasos.
- Remodelar y leerLlevar los datos a la forma que el resto del tidyverse espera. 12 pasos.
- Herramientas funcionales y de textoProgramación funcional y el trabajo con cadenas y fechas que suele acompañarla. 10 pasos.
- ggplot2Sigue siendo la mejor implementación de una gramática de gráficos en cualquier lenguaje, y la razón por la que mucha gente tolera a R. 15 pasos.
Documentación oficial
- The R Project
- Introducción a R
- CRAN, el archivo de paquetes
- Definición del lenguaje R
- R para ciencia de datos