stringtranslate.com

paquete R

una R grande y azul
logotipo R

Los paquetes R son extensiones del lenguaje de programación estadística R. Los paquetes de R contienen código, datos y documentación en un formato de colección estandarizado que los usuarios de R pueden instalar, generalmente a través de un repositorio de software centralizado como CRAN (la red integral de archivos de R). [1] [2] La gran cantidad de paquetes disponibles para R y la facilidad de instalarlos y usarlos se han citado como un factor importante que impulsó la adopción generalizada del lenguaje en la ciencia de datos . [3] [4] [5] [6]

En comparación con las bibliotecas de otros lenguajes de programación, los paquetes R deben ajustarse a una especificación relativamente estricta. [3] El manual Writing R Extensions [7] especifica una estructura de directorio estándar para el código fuente, datos, documentación y metadatos de paquetes de R, que permite instalarlos y cargarlos utilizando las herramientas de administración de paquetes integradas de R. [3] Los paquetes distribuidos en CRAN deben cumplir estándares adicionales. [3] [8] Según John Chambers , si bien estos requisitos "imponen exigencias considerables" a los desarrolladores de paquetes, mejoran la usabilidad y la estabilidad a largo plazo de los paquetes para los usuarios finales. [3]

Repositorios

Red integral de archivos R (CRAN)

Página de inicio básica del sitio web con principalmente texto en cuadros y enlaces en azul, con el título "The Comprehensive R Archive Network" en la parte superior y el logotipo del lenguaje de programación R en la esquina superior izquierda.
La página de inicio de la Red Integral de Archivos R (CRAN)

La Comprehensive R Archive Network (CRAN) es el repositorio central de software de R , respaldado por la R Foundation. [9] Contiene un archivo de las versiones más recientes y anteriores de la distribución de R, la documentación y los paquetes de R aportados. [10] Incluye paquetes fuente y binarios precompilados para Windows y macOS . [11] En noviembre de 2020 , hay más de 16.000 paquetes disponibles. [12] CRAN fue creado por Kurt Hornik y Friedrich Leisch en 1997, [13] [14] con un nombre paralelo a otros sistemas de empaquetado tempranos como CTAN de TeX (lanzado en 1992) y CPAN de Perl (lanzado en 1995). [15] A partir de 2021 , Hornik y un equipo de voluntarios todavía lo mantienen. [9] El sitio maestro está ubicado en la Universidad de Economía y Negocios de Viena y está reflejado en servidores de todo el mundo. [10]

Página de inicio para vistas de tareas de R CRAN

La página "Vistas de tareas" (lista de temas) en el sitio web de CRAN [16] enumera una amplia gama de tareas (en campos como finanzas, genética, informática de alto rendimiento, aprendizaje automático, imágenes médicas, metanálisis , ciencias sociales y espaciales). estadísticas) para los cuales hay paquetes R disponibles. Metacran [17] proporciona otra forma de explorar los paquetes CRAN, que también mantiene listas de los paquetes destacados, más descargados, de tendencia o de los que más se depende.

La cantidad de paquetes CRAN ha crecido exponencialmente durante muchos años [18] y, en 2018, se realizaba un promedio de 21 envíos de paquetes nuevos o actualizados cada día. [6] Dado que cada envío es revisado manualmente por un pequeño equipo de mantenedores de CRAN, muchos de los cuales, según el desarrollador principal de R, Peter Dalgaard , se están "acercando a la edad de jubilación", existe la preocupación de que este sistema no sea sostenible a largo plazo. . [6] El crecimiento de CRAN ha expuesto las limitaciones de su infraestructura de gestión de dependencias , particularmente el hecho de que asume que las dependencias siempre se refieren a la última versión de un paquete, lo que significa que las nuevas versiones de los paquetes CRAN siempre deben ser compatibles con versiones anteriores , [19] y que los paquetes CRAN no pueden tener dependencias que no estén en CRAN. [20] También ha generado preocupaciones sobre la disminución de la calidad de los paquetes. [21]

MRAN y administrador de paquetes Posit

Página de inicio de Microsoft R Application Network (MRAN)

Microsoft R Application Network (MRAN) es un espejo de CRAN mantenido por Microsoft que se basa en la distribución posterior de R de la compañía, Microsoft R Open (anteriormente Revolution R Open). [22] También incluye un archivo de instantáneas diarias de CRAN, denominado "CRAN Time Machine", que permite a los usuarios de MRAN evitar las limitaciones de versiones de dependencia de CRAN instalando un conjunto fijo de versiones de paquetes R a través del punto de control del paquete. [23] [24] En enero de 2023, Microsoft anunció que se retiraría MRAN y que los sitios web y repositorios asociados dejarían de estar disponibles en julio de 2023. [25]

Página de inicio del administrador de paquetes Posit

Posit Package Manager (anteriormente RStudio Package Manager) es una herramienta similar producida por los desarrolladores de RStudio que, además de las instantáneas de CRAN, incluye un archivo de paquetes R de Bioconductor y paquetes Python del Python Package Index . [26] También distribuye paquetes binarios precompilados para Linux (solo los binarios de Windows y macOS se incluyen en CRAN). [27]

Otros repositorios

El proyecto Bioconductor proporciona paquetes R para el análisis de datos genómicos. Esto incluye herramientas de análisis y manejo de datos orientadas a objetos para datos de Affymetrix , microarrays de ADNc y métodos de secuenciación de alto rendimiento de próxima generación . [28]

Página de inicio de R-Forge

R-Forge, [29] es una plataforma central para el desarrollo colaborativo de paquetes R, software y proyectos relacionados con R. R-Forge también alberga muchos paquetes beta no publicados y versiones de desarrollo de paquetes CRAN.

Paquetes básicos y recomendados

R se distribuye con quince "paquetes base": base, compilador, conjuntos de datos, grDevices, gráficos, grid, métodos, paralelo, splines, stats, stats4, tcltk, herramientas, traducciones y utilidades. [30]

Además, hay quince "paquetes recomendados" de CRAN que se incluyen con las distribuciones binarias de R: KernSmooth, MASS, Matrix, boot, class, cluster, codetools, Foreign, lattice, mgcv, nlme, nnet, rpart, espacial y supervivencia. [30]

Otros paquetes

Un grupo de paquetes llamado tidyverse , que puede considerarse un "dialecto del lenguaje R", es cada vez más popular en el ecosistema R. A partir del 13 de junio de 2020, Metacran [17] enumeró 7 de los 8 paquetes principales de tidyverse en la lista de paquetes R más descargados. El grupo de paquetes se esfuerza por proporcionar una colección coherente de funciones para abordar tareas comunes de ciencia de datos, incluida la importación, limpieza, transformación y visualización de datos (en particular con el paquete ggplot2 ).

Los paquetes de infraestructura R [31] admiten la codificación y el desarrollo de paquetes R y, a partir del 4 de mayo de 2021, Metacran [17] enumera 16 de estos paquetes entre los 25 paquetes más descargados.

Ver también

Referencias

  1. ^ Hornik, Kurt (20 de febrero de 2020). "Preguntas frecuentes sobre R". La red integral de archivos de R. 7.29: ¿Cuál es la diferencia entre paquete y biblioteca? Archivado desde el original el 9 de julio de 2011 . Consultado el 2 de noviembre de 2020 .{{cite web}}: Mantenimiento CS1: ubicación ( enlace )
  2. ^ Wickham, Hadley; Bryan, Jennifer. "Introducción". Paquetes R (2ª ed.). Archivado desde el original el 29 de junio de 2022 . Consultado el 2 de noviembre de 2020 .
  3. ^ abcde Cámaras, John M. (2020). "S, R y ciencia de datos". El Diario R. 12 (1): 462–476. doi : 10.32614/RJ-2020-028 . ISSN  2073-4859. Archivado desde el original el 1 de noviembre de 2020 . Consultado el 2 de noviembre de 2020 .
  4. ^ Vance, Ashlee (6 de enero de 2009). "Analistas de datos cautivados por el poder de R". New York Times . Archivado desde el original el 2 de mayo de 2021 . Consultado el 2 de noviembre de 2020 .
  5. ^ Tippmann, Sylvia (29 de diciembre de 2014). "Herramientas de programación: Aventuras con R". Noticias de la naturaleza . 517 (7532): 109–110. doi : 10.1038/517109a . PMID  25557714.
  6. ^ abc Thieme, Nick (2018). "Generación R". Significado . 15 (4): 14-19. doi : 10.1111/j.1740-9713.2018.01169.x . ISSN  1740-9713.
  7. ^ "Escribir extensiones R". La red integral de archivos de R. Archivado desde el original el 12 de noviembre de 2020 . Consultado el 2 de noviembre de 2020 .
  8. ^ "Política de repositorio CRAN". La red integral de archivos de R. Archivado desde el original el 5 de noviembre de 2020 . Consultado el 2 de noviembre de 2020 .
  9. ^ ab Mantenedores del repositorio CRAN. "Política de repositorio CRAN". La red integral de archivos de R. Proyecto R. Archivado desde el original el 11 de noviembre de 2020 . Consultado el 20 de noviembre de 2020 .
  10. ^ ab Hornik, Kurt (20 de febrero de 2020). "Preguntas frecuentes sobre R". La red integral de archivos de R. 2.1: ¿Qué es CRAN?: Proyecto R. Archivado desde el original el 9 de julio de 2011 . Consultado el 20 de noviembre de 2020 .{{cite web}}: Mantenimiento CS1: ubicación ( enlace )
  11. ^ Mantenedores del repositorio CRAN. "La red integral de archivos de R". Proyecto R. Archivado desde el original el 23 de enero de 2019 . Consultado el 20 de noviembre de 2020 .
  12. ^ Mantenedores del repositorio CRAN. "CRAN - Paquetes contribuidos". La red integral de archivos de R. GRÚA. Archivado desde el original el 24 de noviembre de 2020 . Consultado el 20 de noviembre de 2020 .
  13. ^ Hornik, Kurt (23 de abril de 1997). "ANUNCIO: CRAN". r-announce (lista de correo). Archivado desde el original el 8 de marzo de 2021 . Consultado el 20 de noviembre de 2020 .
  14. ^ Thieme, Nick (2018). "Generación R". Significado . 15 (4): 14-19. doi : 10.1111/j.1740-9713.2018.01169.x . ISSN  1740-9713.
  15. ^ Fitzgerald, Brian (9 de febrero de 2016). "Una encuesta sobre sistemas de paquetes de lenguajes de programación". Algunas cosas son obvias . Archivado desde el original el 9 de noviembre de 2020 . Consultado el 4 de mayo de 2021 .
  16. ^ "Vistas de tareas CRAN". cran.r-project.org . Archivado desde el original el 9 de julio de 2011 . Consultado el 16 de septiembre de 2018 .
  17. ^ a b "Metacrán". Archivado desde el original el 2021-04-20 . Consultado el 4 de mayo de 2021 .
  18. ^ Asay, Matt (21 de abril de 2016). "El crecimiento exponencial de la comunidad de código abierto de R amenaza a los competidores comerciales". República Tecnológica . Archivado desde el original el 26 de octubre de 2020 . Consultado el 2 de noviembre de 2020 .
  19. ^ Habitaciones, Jeroen (2013). "Posibles direcciones para mejorar el control de versiones de dependencia en R". El Diario R. 5 (1): 197–206. arXiv : 1303.2140 . doi : 10.32614/RJ-2013-019 . ISSN  2073-4859. S2CID  6791850. Archivado desde el original el 19 de septiembre de 2020 . Consultado el 2 de noviembre de 2020 .
  20. ^ Decanato, A.; Hombres, T.; Claes, M.; Grosjean, P. (2016). "Cuando GitHub se encuentra con CRAN: un análisis de los problemas de dependencia de paquetes entre repositorios". 23a Conferencia Internacional IEEE 2016 sobre Análisis, Evolución y Reingeniería de Software (SANER) . vol. 1. págs. 493–504. doi :10.1109/SANER.2016.12. ISBN 978-1-5090-1855-0. S2CID  16751624. Archivado desde el original el 16 de enero de 2021 . Consultado el 12 de mayo de 2021 .
  21. ^ Hornik, Kurt (2012). "¿Hay demasiados paquetes R?". Revista Austriaca de Estadística . 41 (1): 59–66–59–66. doi : 10.17713/ajs.v41i1.188 . ISSN  1026-597X. Archivado desde el original el 26 de noviembre de 2020 . Consultado el 2 de noviembre de 2020 .
  22. ^ "Bienvenidos a MRAN". Red de aplicaciones Microsoft R. Microsoft . Archivado desde el original el 4 de mayo de 2021 . Consultado el 4 de mayo de 2021 .
  23. ^ "Reproducibilidad: uso de instantáneas del repositorio CRAN fijo". Red de aplicaciones Microsoft R. Microsoft . Archivado desde el original el 2 de mayo de 2021 . Consultado el 4 de mayo de 2021 .
  24. ^ Smith, David (22 de mayo de 2019). "Instantáneas de MRAN y tú". Revoluciones . Análisis de la revolución . Archivado desde el original el 4 de mayo de 2021 . Consultado el 4 de mayo de 2021 .
  25. ^ "Retiro de la red de aplicaciones de Microsoft R". techcommunity.microsoft.com . Consultado el 15 de noviembre de 2023 .
  26. ^ Lopp, Sean (7 de diciembre de 2020). "RStudio Package Manager 1.2.0 - Bioconductor y PyPI". Blog de RStudio . RStudio . Archivado desde el original el 4 de mayo de 2021 . Consultado el 4 de mayo de 2021 .
  27. ^ Lopp, Sean (1 de julio de 2020). "Anuncio de Public Package Manager y v1.1.6". Blog de RStudio . RStudio . Archivado desde el original el 4 de mayo de 2021 . Consultado el 4 de mayo de 2021 .
  28. ^ Huber, W; Carey, VJ; Caballero, R ; Anders, S; Carlson, M; Carvalho, BS; Bravo, HC; Davis, S; Gatto, L; Girke, T; Gotardo, R; Hahne, F; Hansen, KD; Irizarry, RA ; Lorenzo, M; Amor mi; MacDonald, J; Obenchain, V; Oleś, AK; Pagés, H; Reyes, A; Shannon, P; Smith, GK; Tenenbaum, D; Waldron, L; Morgan, M (2015). "Orquestación de análisis genómico de alto rendimiento con Bioconductor". Métodos de la naturaleza . Grupo Editorial Naturaleza . 12 (2): 115-121. doi :10.1038/nmeth.3252. PMC 4509590 . PMID  25633503. 
  29. ^ "R-Forge: Bienvenido". Archivado desde el original el 14 de septiembre de 2018 . Consultado el 16 de septiembre de 2018 .
  30. ^ ab Hornik, Kurt (20 de febrero de 2020). "Preguntas frecuentes sobre R". La red integral de archivos de R. 5.1: ¿Qué paquetes complementarios existen para R? Archivado desde el original el 9 de julio de 2011 . Consultado el 2 de noviembre de 2020 .{{cite web}}: Mantenimiento CS1: ubicación ( enlace )
  31. ^ "Infraestructura R". GitHub . Archivado desde el original el 19 de mayo de 2021 . Consultado el 4 de mayo de 2021 .

Otras lecturas

enlaces externos