пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

Класс R

59. Класс R ???

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 включен основной набор пакетов, а всего по состоянию на 2013 год доступно более 4000 пакетов[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, 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, 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).

 


22.06.2017; 20:36
хиты: 157
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь