WikiSort.ru - Программирование

ПОИСК ПО САЙТУ | о проекте
R
Класс языка мультипарадигмальный
Тип исполнения интерпретируемый
Появился в 1993[1]
Автор Росс Айхэка
Роберт Джентлмен
Выпуск
Система типов динамическая
Испытал влияние S, Scheme
Лицензия GNU GPL 2[3]
ОС Linux, Microsoft Windows и macOS
Сайт r-project.org

R — язык программирования для статистической обработки данных и работы с графикой, а также свободная программная среда вычислений с открытым исходным кодом в рамках проекта GNU. Язык создавался как аналогичный языку S, разработанному в Bell Labs, и является его альтернативной реализацией, хотя между языками есть существенные отличия, но в большинстве своём код на языке S работает в среде R. Изначально R был разработан сотрудниками статистического факультета Оклендского университета Россом Айхэкой (англ. Ross Ihaka) и Робертом Джентлменом (англ. Robert Gentleman) (первая буква их имён — R); язык и среда поддерживаются и развиваются организацией R Foundation[4].

R широко используется как статистическое программное обеспечение для анализа данных и фактически стал стандартом для статистических программ[5].

R доступен под лицензией GNU GPL. Распространяется в виде исходных кодов, а также откомпилированных приложений под ряд операционных систем: FreeBSD, Solaris[6] и другие дистрибутивы Unix и Linux, Microsoft Windows, Mac OS X.

В R используется интерфейс командной строки, хотя доступны и несколько графических интерфейсов пользователя, например пакет R Commander, RKWard, RStudio, Weka, Rapid Miner, KNIME[en], а также средства интеграции в офисные пакеты.

В 2010 году R вошёл в список победителей конкурса журнала Infoworld[en] в номинации на лучшее открытое программное обеспечение для разработки приложений[7].

Особенности

R поддерживает широкий спектр статистических и численных методов и обладает хорошей расширяемостью с помощью пакетов. Пакеты представляют собой библиотеки для работы специфических функций или специальных областей применения. В базовую поставку R включен основной набор пакетов, а всего по состоянию на 2017 год доступно более 11778 пакетов[8].

Ещё одна особенность R - возможность создания качественной графики, которая может включать математические символы.

Примеры

Базовый синтаксис

> x <- c(1,2,3,4,5,6)   # Создать упорядоченную коллекцию
> y <- x^2              # Возвести в квадрат элементы из x
> print(y)              # Вывести y
[1]  1  4  9 16 25 36
> mean(y)               # Рассчитать среднее арифметическое y; результат - число
[1] 15.16667
> var(y)                # Рассчитать дисперсию
[1] 178.9667

Средний балл выпускника вуза

# В переменную a поместить список всех оценок:
a <- c(4,3,3,3,3,4,4,4,4,4,5,4,4,4,5,5,5,5,+
3,5,5,4,4,3,3,4,4,3,5,5,4,3,3,4,4,3,3,5,4,5,5)

# В переменную n поместить количество оценок:
length(a) -> n

# Средний балл:
m <- mean(a)

# Таблица (горизонтальная) с подсчётом количества оценок:
t <- table(a)

# Преобразование в более удобный формат данных (вертикальную таблицу):
f <- as.data.frame(t)

# Вычисление процентной доли и запись её в третий столбец:
mapply(function(r) r*100/n, f[,2]) -> f[,3]

# Заголовки столбцов:
colnames(f) <- c("Оценка", "Кол-во", "%")

# Вывод результатов:
a
n
m
f

Результат:

[1] 4 3 3 3 3 4 4 4 4 4 5 4 4 4 5 5 5 5 3 5 5 4 4 3 3 4 4 3 5 5 4 3 3 4 4 3 3 5
[39] 4 5 5
[1] 41
[1] 4
  Оценка Кол-во        %
1      3     12 29.26829
2      4     17 41.46341111
3      5     12 29.26829

Инструменты

Для удобства работы с R разработан ряд графических интерфейсов, в том числе RStudio, JGR, RKWard, SciViews-R, Statistical Lab, R Commander, Rattle.

Кроме того, в ряде текстовых и кодовых редакторов предусмотренные специальные режимы для работы с R, в частности в ConTEXT, Emacs (Emacs Speaks Statistics), jEdit, Kate, Notepad++, Syn, TextMate, Tinn-R, Vim, Bluefish, WinEdt (с пакетом RWinEdt), Gedit (с пакетом rgedit/gedit-r-plugin). Для среды разработки Eclipse существует специализированный R-плагин; доступ к функциям и среде выполнения R возможен из Python с использованием пакета RPy; работать с R можно из эконометрического пакета Gretl.

Коммерциализация

Компания Revolution Analytics, основанная в 2007 году, целиком свой бизнес посвящает коммерциализации языка программирования R, в её коммерческом пакете Revolution R примечательны такие компоненты (не распространяемые со свободной версией языка), как ParallelR (поддержка многопоточности среды выполнения), R Productivity Environment (интегрированная среда разработки), RevoScaleR (поддержка массово-параллельной обработки в рамках концепции «больших данных»), RevoDeployR, библиотеки по интеграции с веб-службами, поддержка форматов статистических пакетов корпорации SAS Institute[9].

В октябре 2011 года корпорация Oracle выпустила аппаратно-программный комплекс Big Data Appliance — NoSQL-кластер серверов массово-параллельной обработки, с интегрированным программными средствами на основе языка R и Apache Hadoop[10], а в феврале 2012 года язык встроен в Oracle Database[11]. В 2011 году массово-параллельный анализ средствами R реализован в аппаратно-программных комплексах Netezza корпорации IBM[12][13]; позднее язык поддержан в аппаратно-программном комплексе SAP Hana.

Также язык R поддерживают коммерческие программные среды Tibco Spotfire, SPSS (начиная с версии 16.0)[14], Statistica (начиная с версии 9.0), Platform Symphony, Power BI, SAS, Tableau.

CRAN

R и дополнительные пакеты распространяются через CRAN (акроним Comprehensive R Archive Network). В настоящее время в мире доступны более 60 зеркал CRAN. Головной узел — (http://cran.r-project.org/) расположен в Вене (Австрия).

Информационный бюллетень R

Два-три раза в год выходит свободно распространяемый информационный журнал R Journal[15]. Он содержит информацию по статистической обработке данных и разработке, что может быть интересно как пользователям, так и разработчикам R. С января 2001 года по октябрь 2008 года он выходил в качестве бюллетеня R News[16].

Конференции

Одна из самых популярных конференций, посвящённых языку — useR! (The R User Conference), проходит ежегодно, начиная с 2004 года, собирает специалистов в различных областях.

Начиная с 2009 года каждой весной в Чикаго проводится конференция, посвящённая применению R в финансах (R/Finance: Applied Finance with R). В 2013 году прошла первая конференция, посвящённая применению R в страховании (R in Insurance).

Примечания

  1. A Brief History R: Past and Future History, Ross Ihaka, Statistics Department, The University of Auckland, Auckland, New Zealand, available from the CRAN website
  2. https://hypatia.math.ethz.ch/pipermail/r-announce/2018/000634.html
  3. https://www.r-project.org/about.html
  4. R: The R Foundation
  5. Teaching-with-R.pdf (англ.)
  6. R-Project on Solaris (недоступная ссылка)  (недоступная ссылка с 13-05-2013 [2112 дней])
  7. InfoWorld Bossie Awards 2010 Архивировано 11 сентября 2014 года.
  8. CRAN - Contributed Packages. cran.r-project.org. Проверено 9 ноября 2017.
  9. 'Red Hat for stats' goes toe-to-toe with SAS
  10. Oracle rolls its own NoSQL and Hadoop
  11. Prickett Morgan, Timothy Oracle tucks R stats language into database (англ.). The Register (10 February 2012). Проверено 10 февраля 2012. Архивировано 3 июня 2012 года.
  12. Harris, Derrick. IBM Creates Big Data Frankenstein With Netezza-R Fusion (англ.), The New York Times (2011-03-141). Проверено 19 ноября 2011.
  13. Rosenberg, Dave Open-source 'R' gets Hadoop integration (англ.). CNet. CBS. Проверено 19 ноября 2011. Архивировано 17 февраля 2012 года.
  14. RSS Matters
  15. R Journal
  16. CRAN: R News

Литература

  • Роберт Кабаков. R в действии = R in Action. ДМК-Пресс, 2014. — 588 с. — ISBN 978-5-947060-077-1.
  • Хэдли Уикем, Гарретт Гроулмунд. Язык R в задачах науки о данных: импорт, подготовка, обработка, визуализация и моделирование данных = R for Data Science: Visualize, Model, Transform, Tidy, and Import Data. Вильямс, 2017. — 592 с. ISBN 978-5-9909446-8-8, 978-1-491-91039-9.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии