Из Википедии, бесплатной энциклопедии
  (Перенаправлено из Comprehensive R Archive Network )
Перейти к навигации Перейти к поиску

Пакеты R являются расширениями к R статистического языка программирования . Пакеты R содержат код, данные и документацию в стандартизированном формате сбора, который может быть установлен пользователями R, обычно через централизованный репозиторий программного обеспечения, такой как CRAN (Comprehensive R Archive Network). [1] [2] Большое количество пакетов, доступных для R, а также простота их установки и использования были названы основным фактором, способствовавшим широкому распространению этого языка в науке о данных . [3] [4] [5] [6]

По сравнению с библиотеками на других языках программирования, пакеты R должны соответствовать относительно строгой спецификации. [3] Запись R Extensions руководство [7] определяет стандартную структура каталогов для исходного кода R, данных, документации и метаданных пакета, что позволяет устанавливать их и загрузить с помощью встроенного АиРа управления пакетов инструментов. [3] Пакеты, распространяемые через CRAN, должны соответствовать дополнительным стандартам. [3] [8] По словам Джона Чемберса , хотя эти требования «предъявляют значительные требования» к разработчикам пакетов, они улучшают удобство использования.и долгосрочная стабильность пакетов для конечных пользователей. [3]

Хранилища [ править ]

Комплексная сеть архивов R (CRAN) [ править ]

Comprehensive R Archive Network (CRAN) - это центральный репозиторий программного обеспечения R , поддерживаемый R Foundation. [9] Он содержит архив последней и предыдущей версий дистрибутива R, документации и дополнительных пакетов R. [10] Он включает как пакеты с исходным кодом, так и предварительно скомпилированные двоичные файлы для Windows и macOS . [11] По состоянию на ноябрь 2020 года доступно более 16 000 пакетов. [12] CRAN был создан Куртом Хорником и Фридрихом Лейшем в 1997 году, [13] [14]с именем распараллеливания других систем раннего упаковки , такие как TeX «s CTAN (выпущен в 1992) и Perl » ы CPAN (выпущен в 1995 году). [15] По состоянию на 2021 год он по-прежнему поддерживается Хорником и командой волонтеров. [9] Главный сайт находится в Венском университете экономики и бизнеса и зеркалируется на серверах по всему миру. [10]

Страница «Представления задач» (список тем) на веб-сайте CRAN [16] перечисляет широкий спектр задач (в таких областях, как финансы, генетика, высокопроизводительные вычисления, машинное обучение, получение медицинских изображений, социальные науки и пространственная статистика), для которых Доступны пакеты R. Другой способ просмотра пакетов CRAN предоставляется Metacran [17], который также поддерживает списки популярных, наиболее загружаемых, популярных или наиболее зависимых пакетов.

Количество пакетов CRAN росло в геометрической прогрессии в течение многих лет [18], и по состоянию на 2018 год в среднем ежедневно производилась 21 отправка новых или обновленных пакетов. [6] Поскольку каждая заявка вручную проверяется небольшой группой специалистов по обслуживанию CRAN, многие из которых, по словам основного разработчика R Питера Далгаарда , «приближаются к пенсионному возрасту», есть опасения, что эта система не является устойчивой в долгосрочной перспективе. . [6] Рост CRAN выявил ограничения его инфраструктуры управления зависимостями , в частности тот факт, что он предполагает, что зависимости всегда относятся к последней версии пакета, а это означает, что новые выпуски пакетов CRAN всегда должны бытьобратно совместимы , [19] и что пакеты CRAN не могут иметь зависимости, не относящиеся к CRAN. [20] Это также привело к опасениям по поводу снижения качества упаковки. [21]

MRAN и диспетчер пакетов RStudio [ править ]

Сеть приложений Microsoft R (MRAN) является зеркалом CRAN, поддерживаемого Microsoft и основанного на последующем распространении R компании, Microsoft R Open (ранее Revolution R Open). [22] Он также включает архив ежедневных снимков CRAN, известный как «Машина времени CRAN», который позволяет пользователям MRAN обходить ограничения CRAN на управление версиями зависимостей, устанавливая фиксированный набор версий пакета R через контрольную точку пакета. [23] [24]

RStudio Package Manager - аналогичный инструмент, созданный RStudio , который помимо снимков CRAN включает архив пакетов R из Bioconductor и пакетов Python из индекса пакетов Python . [25] Он также распространяет предварительно скомпилированные двоичные пакеты для Linux (в CRAN включены только двоичные файлы Windows и macOS). [26]

Другие репозитории [ править ]

Проект Bioconductor предоставляет пакеты R для анализа геномных данных. Сюда входят инструменты объектно-ориентированной обработки и анализа данных из Affymetrix , микрочипа кДНК и высокопроизводительные методы секвенирования нового поколения . [27]

R-Forge, [28] является центральной платформой для совместной разработки пакетов R, программного обеспечения, связанного с R, и проектов. R-Forge также содержит множество неопубликованных бета-пакетов и разрабатываемых версий пакетов CRAN.

Базовые и рекомендуемые пакеты [ править ]

R распространяется с четырнадцатью «базовыми пакетами»: base, compiler, datasets, grDevices, graphics, grid, methods, parallel, splines, stats, stats4, tcltk, tools и utils. [29]

Кроме того, есть пятнадцать «рекомендуемых пакетов» от CRAN, которые включены в двоичные дистрибутивы R: KernSmooth, MASS, Matrix, boot, class, cluster, codetools, foreign, lattice, mgcv, nlme, nnet, rpart, пространственный и выживание. [29]

Другие пакеты [ править ]

Группа пакетов под названием Tidyverse , которую можно рассматривать как «диалект языка R», становится все более популярной в экосистеме R. По состоянию на 13 июня 2020 года Metacran [17] перечислил 7 из 8 основных пакетов Tidyverse в списке наиболее загружаемых пакетов R. Группа пакетов стремится предоставить связный набор функций для решения общих задач науки о данных, включая импорт, очистку, преобразование и визуализацию данных (особенно с пакетом ggplot2 ).

Пакеты R Infrastructure [30] поддерживают кодирование и разработку пакетов R, и по состоянию на 2021-05-04 Metacran [17] перечисляет 16 из этих пакетов среди 25 наиболее загружаемых пакетов.

Другие пакеты R включают datasets.load, написанный Bastiaan Quast , который добавляет графический интерфейс и интерфейс командной строки для загрузки наборов данных из установленных пакетов. [31]

См. Также [ править ]

  • Tidyverse
  • ggplot2
  • вязальщица

Ссылки [ править ]

  1. ^ Хорник, Курт (2020-02-20). «Часто задаваемые вопросы по R» . Комплексная R архивной сети . 7.29: В чем разница между пакетом и библиотекой? . Дата обращения 2 ноября 2020 .CS1 maint: location (link)
  2. ^ Уикхэм, Хэдли; Брайан, Дженнифер. "Вступление". Пакеты R (2-е изд.).
  3. ^ а б в г д Чемберс, Джон М. (2020). «S, R и Data Science» . R Journal . 12 (1): 462–476. ISSN 2073-4859 . 
  4. ^ Вэнс, Эшли (2009-01-06). «Аналитики данных, увлеченные силой R» . Нью-Йорк Таймс .
  5. ^ Tippmann, Sylvia (2014-12-29). «Инструменты программирования: Приключения с R» . Новости природы . 517 (7532): 109. DOI : 10.1038 / 517109a .
  6. ^ a b c Тим, Ник (2018). «Поколение R» . Значение . 15 (4): 14–19. DOI : 10.1111 / j.1740-9713.2018.01169.x . ISSN 1740-9713 . 
  7. ^ R Основная команда. «Написание расширений R» . Комплексная R архивной сети . Проверено 2 ноября 2020 .CS1 maint: uses authors parameter (link)
  8. ^ Специалисты по обслуживанию репозитория CRAN. «Политика репозитория CRAN» . Комплексная R архивной сети . Проверено 2 ноября 2020 .CS1 maint: uses authors parameter (link)
  9. ^ a b Специалисты по обслуживанию репозитория CRAN. «Политика репозитория CRAN» . Комплексная R архивной сети . R проект . Проверено 20 ноября 2020 года .
  10. ^ a b Хорник, Курт (20.02.2020). «Часто задаваемые вопросы по R» . Комплексная R архивной сети . 2.1: Что такое CRAN ?: R Project . Проверено 20 ноября 2020 года .CS1 maint: location (link)
  11. ^ Специалисты по обслуживанию репозитория CRAN. «Всеобъемлющая сеть архивов R» . R проект . Проверено 20 ноября 2020 года .
  12. ^ Специалисты по обслуживанию репозитория CRAN. «CRAN - Дополнительные пакеты» . Комплексная R архивной сети . КРАН . Проверено 20 ноября 2020 года .
  13. ^ Хорник, Курт (1997-04-23). «ОБЪЯВЛЕНИЕ: КРАН» . r-announce (Список рассылки) . Проверено 20 ноября 2020 года .
  14. ^ Тим, Ник (2018). «Поколение R» . Значение . 15 (4): 14–19. DOI : 10.1111 / j.1740-9713.2018.01169.x . ISSN 1740-9713 . 
  15. ^ Фицджеральд, Брайан (2016-02-09). "Обзор систем языковых пакетов программирования" . Некоторые вещи очевидны . Дата обращения 4 мая 2021 .
  16. ^ "Представления задач CRAN" . cran.r-project.org . Проверено 16 сентября 2018 .
  17. ^ a b c "Метакран" .
  18. 21 апреля, Мэтт Эсей в Open Source on; 2016; Пт, 12:32. «Экспоненциальный рост сообщества R с открытым исходным кодом угрожает коммерческим конкурентам» . TechRepublic . Проверено 2 ноября 2020 .CS1 maint: numeric names: authors list (link)
  19. ^ Оомс Йерун (2013). «Возможные направления улучшения управления версиями зависимостей в R» . R Journal . 5 (1): 197–206. ISSN 2073-4859 . 
  20. ^ Decan, A .; Mens, T .; Клаас, М .; Грожан, П. (2016). «Когда GitHub встречает CRAN: анализ проблем зависимости пакетов между репозиториями» . 23-я Международная конференция по анализу, развитию и реинжинирингу программного обеспечения (SANER), 2016 г., IEEE . 1 : 493–504. DOI : 10,1109 / SANER.2016.12 .
  21. ^ Хорник, Курт (2012). "Слишком много пакетов R?" . Австрийский статистический журнал . 41 (1): 59–66–59–66. DOI : 10,17713 / ajs.v41i1.188 . ISSN 1026-597X . 
  22. ^ «Добро пожаловать в MRAN» . Microsoft R сетевых приложений . Microsoft . Дата обращения 4 мая 2021 .
  23. ^ «Воспроизводимость: использование фиксированных снимков репозитория CRAN» . Microsoft R сетевых приложений . Microsoft . Дата обращения 4 мая 2021 .
  24. ^ Смит, Дэвид (22.05.2019). «Снимки MRAN, и вы» . Революции . Revolution Analytics . Дата обращения 4 мая 2021 .
  25. ^ Лопп, Шон (2020-12-07). «Диспетчер пакетов RStudio 1.2.0 - Биокондуктор и PyPI» . Блог RStudio . RStudio . Дата обращения 4 мая 2021 .
  26. ^ Лопп, Шон (2020-07-01). «Анонсирование общедоступного диспетчера пакетов и версии 1.1.6» . Блог RStudio . RStudio . Дата обращения 4 мая 2021 .
  27. ^ Хубер, Вт; Кэри, VJ; Джентльмен, Р. Андерс, S; Карлсон, М; Карвалью, Б.С.; Браво, ХК; Дэвис, S; Гатто, L; Гирке, Т; Готтардо, Р. Hahne, F; Hansen, KD; Иризарри, РА; Лоуренс, М.; Люби меня; Макдональд, Дж; Обенчейн, В; Олесь, АК; Pagès, H; Рейес, А; Шеннон, П; Смит, Г.К .; Тененбаум, Д; Waldron, L; Морган, М. (2015). «Организация высокопроизводительного геномного анализа с помощью Bioconductor» . Методы природы . Издательская группа "Природа" . 12 (2): 115–121. DOI : 10.1038 / nmeth.3252 . PMC 4509590 . PMID 25633503 .  
  28. ^ "R-Forge: Добро пожаловать" . Проверено 16 сентября 2018 .
  29. ^ a b Хорник, Курт (20.02.2020). «Часто задаваемые вопросы по R» . Комплексная R архивной сети . 5.1: Какие дополнительные пакеты существуют для R? . Дата обращения 2 ноября 2020 .CS1 maint: location (link)
  30. ^ «Инфраструктура R» .
  31. ^ Ло, Майкл (2017-01-05). «Пакеты R, которые стоит посмотреть» . Аналитика данных & R . Архивировано 03 января 2020 года . Проверено 1 мая 2020 .[ самостоятельно опубликованный источник ]

Дальнейшее чтение [ править ]

  • Клаас, М .; Mens, T .; Грожан, П. (2014). «О ремонтопригодности пакетов CRAN» . Неделя развития программного обеспечения 2014 г. - Конференция IEEE по обслуживанию, реинжинирингу и обратному проектированию программного обеспечения (CSMR-WCRE) : 308–312. DOI : 10,1109 / CSMR-WCRE.2014.6747183 .
  • Декан, Александр; Mens, Tom; Клаас, Мелик; Грожан, Филипп (07.09.2015). «О разработке и распространении R-пакетов: эмпирический анализ экосистемы R» . Труды Европейской конференции 2015 г. по семинарам по архитектуре программного обеспечения . ECSAW '15. Дубровник, Цавтат, Хорватия: Ассоциация вычислительной техники: 1–6. DOI : 10.1145 / 2797433.2797476 . ISBN 978-1-4503-3393-1.
  • Фокс, Джон (2009). «Аспекты социальной организации и траектории проекта R» . R Journal . 1 (2): 5–13. ISSN  2073-4859 .
  • Фокс, Джон; Leanage, Allison (12 сентября 2016 г.). "R и журнал статистического программного обеспечения" . Журнал статистического программного обеспечения . 73 (1): 1–13. DOI : 10,18637 / jss.v073.i02 . ISSN  1548-7660 .
  • Плакидас, Константинос; Шалл, Дэниел; Здун, Уве (2017). «Эволюция программной экосистемы R: метрики, отношения и их влияние на качества» . Журнал систем и программного обеспечения . 132 : 119–146. DOI : 10.1016 / j.jss.2017.06.095 . ISSN  0164-1212 .

Внешние ссылки [ править ]

  • Комплексная сеть архивов R (CRAN)
  • METACRAN , каталог пакетов R
  • CRAN Task Views , список пакетов CRAN по темам