R дайджест #0

R — это язык программирования, ставший стандартом де-факто в мире математической статистики. Это определение не очень точное, потому что R используется в первую очередь как среда для интерактивных вычислений. С другой стороны, R — это реализация языка программирования S, выросшего из библиотеки вычислительных функций для FORTRAN с некоторыми отличиями. Развитие S остановилось, а для R как свободной реализации, в которой принимают участие создатели оригинального S, — продолжилось. В последнее время внимание к R повысилось из-за развития приложений анализа данных и вхождения термина data-science в последнюю версию startup buzzword bingo.

Прочитать о ранней эволюции языка S можно в cm.bell-labs.

Страница проекта R.

C чего можно начинать изучение:

R для нетерпеливых: impatient-r.

Стандартное введение довольно легко читается и дает полную информацию.

Интерактивный онлайн-курс: tryr.codeschool.

Обзор существующих учебников: R-tutorials.

Более серьезная литература:

Формальное определение языка: R-lang.

Advanced R (находящаяся в процессе написания, но очень хорошая): adv-r.had.

Больше ресурсов на StackOverlow info page.

Для любителей русского языка:

Указатель на ресурсы.

Книга в свободном доступе.

MOOP курсы:

Statistics for data analysis: coursera.org/course/compdata

Programming in R: coursera.org/course/rprog

Инструментальные средства:

rstudio — IDE для тех, кому не хватает минималистичного интерфейса командной строки.

Knitr — среда «составления аналитических отчетов», где можно комбинировать текст в Markdown или LaTeX с графиками и данными из R.

Связка R и Excel.

Развитие R проистекает немного не так, как в традиционных языках программирования, а скорее ближе к развитию естественных языков. К примеру, как и все современное, R поддерживает объектно-ориентированное программирование. Однако, в отличие от большинства современных языков, в R одновременно поддерживается несколько объектных систем: S3, S4 и Reference Classes (часто называемая R5). Обзор можно посмотреть в adv-r.had или digitheadslabnotebook.

Также существует популярная система r-proto, предоставляющая прототипно-ориентированную объектную модель. Это все существует и развивается параллельно. Динамическая типизация тут соседствует с использованием зависимых типов (до того как это стало мейнстримом ;) - тип возвращаемого функцией значения может зависеть не только от типа, но и от размерности аргументов.

C++ встраивается в R как скриптовый язык (впрочем, как и наоборот).

В R просто огромный репозиторий пакетов. Как правило, если какой-то статистический метод где-то опубликован, то его реализация есть в CRAN.

rdocumentation — индекс всех пакетов с поиском.

shiny.rstudio — современный web-фреймворк для R, предоставляющий реактивную связь между серверной и клиенской моделью.

RHadoop — map/reduce в handoop.

RStorm — stream-processing в storm (более подробная статья).

SparkR-pkg — интерфейс к Apache spark.

revolutionanalytics — коммерческая версия R с Big Data расширениями.

Более конвенциональный подход заключается в том, что на R обычно пишут прототип алгоритма, а сам алгоритм реализуют на каком-то «программистком» языке.

Двухсторонняя связь R и Java/Scala: dahl.byu.

Cуществуют реализации R для JVM: от Oracle и от BeDataDriven, но практически использовать их в production режиме еще невозможно.

Еще один распространенный пакет для вызова R из JVM — RCaller.

Видео:

R: The good, the bad and the ugly на GOTO-2012.

Why and How People Use R на Lang-Next 2012

Present and Future of the R programming language на Lang-Next 2014.

Локальные применения:

Маєте важливу новину про українське ІТ? Розкажіть спільноті. Це анонімно.І підписуйтеся на Telegram-канал редакції DOU

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
Підписатись на автора
LinkedIn



12 коментарів

Підписатись на коментаріВідписатись від коментарів Коментарі можуть залишати тільки користувачі з підтвердженими акаунтами.

datacamp.com — также отличная онлайн обучалка

Для начинающих крутая книжка Norman Matloff — The Art of R Programming, есть ещё библиотека-обучалка из курсэрского курса swirl. Можно ещё Eclipse как IDE использовать. Я бы ещё упомянул, как плюшку 4000 библиотек (это только CRAN) для всего (начиная от xml parser заканчивая демографической статистикой)

Хорошая подборка. Не упомянули о том, что на Курсере целый комплект этих курсов по т.н. специализации «Data Science» от одного штатовского ун-та. «R Programming» (www.coursera.org/course/rprog) — это лишь один курс из девяти. Основная ссылка:
www.coursera.org/.../jhudatascience
И, конечно, это не считая ещё десятков курсов от других школ, где используется R.

Надеюсь на регулярность. Большое спасибо.

ооо!!!.. ждём продолжения! :)

Класс, спасибо!

Класно. Нарешті R дайджест на dou. Ще можете додати www.r-bloggers.com — агрегатор блогів.

Дякую. Я чомусь думав що на r-bloggers є посилання з головної r-project. Зараз подивися — таки нема..

Підписатись на коментарі