Что такое язык программирования R? Введение и основы R

Что такое программное обеспечение R?

R — язык программирования и свободное программное обеспечение, разработанное Россом Ихакой и Робертом Джентльменом в 1993 году. R обладает обширным каталогом статистических и графических методов. Он включает в себя алгоритмы машинного обучения, линейную регрессию, временные ряды, статистический вывод и т. д. Большинство библиотек R написаны на R, но для сложных вычислительных задач — на C, C++ и Fortran кодов являются предпочтительными.

Языку R доверяют не только ученые, но и многие крупные компании, включая Uber, Google, Airbnb, Facebook и так далее.

Анализ данных с помощью R выполняется в несколько этапов; программирование, преобразование, открытие, моделирование и передача результатов

  • Программа: R — понятный и доступный инструмент программирования.
  • Transform: R состоит из коллекции библиотек, разработанных специально для науки о данных.
  • Ознакомиться: Изучите данные, уточните свою гипотезу и проанализируйте их.
  • Модель: R предоставляет широкий набор инструментов для создания правильной модели для ваших данных.
  • Взаимодействие: Интегрируйте коды, графики и выходные данные в отчет с помощью R Markdown или создавайте приложения Shiny, чтобы поделиться ими со всем миром.

Для чего используется R?

  • Статистические выводы
  • Анализ данных
  • Алгоритм машинного обучения

R по отраслям

Если мы разберем использование R по отраслям, мы увидим, что на первом месте стоят ученые. R — это язык для ведения статистики. R является первым выбором в сфере здравоохранения, за которым следуют правительство и консалтинг.

R по отраслям

R пакет

Основными сферами применения R являются и всегда будут статистика, визуализация и машинное обучение. На рисунке ниже показано, какой пакет R вызвал больше всего вопросов в Stack Overflow. В топ-10 большинство из них связаны с рабочим процессом специалиста по обработке данных: подготовка данных и передача результатов.

Пакет Р

Все библиотеки R, почти 12к, хранятся в CRAN. CRAN является бесплатным и открытым исходным кодом. Вы можете загрузить и использовать многочисленные библиотеки для выполнения Машинное обучение или анализ временных рядов.

Пакет Р

Свяжитесь с Р.

В R есть несколько способов представить и поделиться работой: либо через документ с уценкой, либо через блестящее приложение. Все может быть размещено в Rpub, GitHub или на веб-сайте компании.

Ниже приведен пример презентации, размещенной на руб.

Свяжитесь с Р.

Rstudio принимает уценку для написания документа. Вы можете экспортировать документы в разные форматы:

  • Документ:
    • HTML
    • PDF/латекс
    • Word
  • Презентация
    • HTML
    • PDF-проектор

Свяжитесь с Р.

В Rstudio есть отличный инструмент для легкого создания приложений. Ниже приведен пример приложения с данными Всемирного банка.

Свяжитесь с Р.

Зачем использовать R?

Наука о данных формирует способы ведения бизнеса компаниями. Без сомнения, отказ от искусственного интеллекта и машин приведет компанию к краху. Большой вопрос: какой инструмент/язык вам следует использовать?

На рынке доступно множество инструментов для анализа данных. Изучение нового языка требует определенных затрат времени. На рисунке ниже показана кривая обучения в сравнении с бизнес-возможностями, которые предлагает язык. Отрицательная связь подразумевает, что бесплатного обеда не существует. Если вы хотите получить наилучшее представление о данных, вам нужно потратить некоторое время на изучение соответствующего инструмента, а именно R.

Наука о данных для оценки возможностей бизнеса

В левом верхнем углу графика вы можете увидеть Excel и PowerBI. Эти два инструмента просты в освоении, но не предлагают выдающихся бизнес-возможностей, особенно с точки зрения моделирования. В середине вы можете увидеть Python и САС. SAS — это специальный инструмент для статистического анализа бизнеса, но он не бесплатен. SAS — это программное обеспечение «нажми и работай». PythonОднако это язык с монотонной кривой обучения. Python — фантастический инструмент для внедрения машинного обучения и искусственного интеллекта, но ему не хватает коммуникационных функций. Благодаря одинаковой кривой обучения R является хорошим компромиссом между реализацией и анализом данных.

Когда дело доходит до визуализации данных (DataViz), вы наверняка слышали о Tableau. Tableau, без сомнения, является отличным инструментом для выявления закономерностей с помощью графиков и диаграмм. Кроме того, изучение Tableau не отнимает много времени. Одна из больших проблем с визуализацией данных заключается в том, что вы можете так и не найти закономерности или просто создать множество бесполезных диаграмм. Tableau — хороший инструмент для быстрой визуализации данных или бизнес-аналитики. Когда дело доходит до статистики и инструментов принятия решений, R более уместен.

Stack Overflow — это большое сообщество языков программирования. Если у вас возникли проблемы с кодированием или вам нужно понять модель, вам поможет Stack Overflow. За год процент просмотров вопросов для R резко увеличился по сравнению с другими языками. Эта тенденция, конечно, тесно связана с бурным ростом науки о данных, но она отражает спрос на язык R для науки о данных.

Трафик переполнения стека

В науке о данных есть два инструмента, конкурирующих друг с другом. Р и Python вероятно, являются языком программирования, определяющим науку о данных.

Стоит ли выбирать Р?

Специалист по данным может использовать два отличных инструмента: R и Python. У вас может не хватить времени на изучение их обоих, особенно если вы только начинаете изучать науку о данных. Изучение статистического моделирования и алгоритма гораздо важнее, чем изучение языка программирования. А язык программирования это инструмент для вычислений и передачи вашего открытия. Самая важная задача в науке о данных — это то, как вы работаете с данными: импорт, очистка, подготовка, разработка функций, выбор функций. Это должно быть вашим основным фокусом. Если вы пытаетесь изучить R и Python в то же время без солидного опыта в статистике это просто глупо. Специалисты по данным — не программисты. Их работа — понимать данные, манипулировать ими и предлагать лучший подход. Если вы думаете о том, какой язык выучить, давайте посмотрим, какой язык вам наиболее подходит.

Основная аудитория науки о данных — профессионалы бизнеса. В бизнесе одним из важных последствий является общение. Существует множество способов общения: отчет, веб-приложение, панель мониторинга. Вам нужен инструмент, который сделает все это вместе.

R — это сложно?

Несколько лет назад язык R был трудным для освоения. Язык был запутанным и не таким структурированным, как другие инструменты программирования. Чтобы решить эту серьезную проблему, Хэдли Уикхэм разработал коллекцию пакетов под названием tidyverse. Правила игры изменились в лучшую сторону. Манипулирование данными становится тривиальным и интуитивно понятным. Создать график было уже не так сложно.

Лучшие алгоритмы машинного обучения можно реализовать с помощью R. Такие пакеты, как Keras и TensorFlow, позволяют создавать высококлассные методы машинного обучения. В R также есть пакет для реализации Xgboost, одного из лучших алгоритмов для соревнований Kaggle.

R может общаться с другим языком. Есть возможность позвонить Python, Java, C++ в R. Мир больших данных также доступен для R. Вы можете подключить R к различным базам данных, например Spark или Хадуп.

Наконец, R эволюционировал и позволил распараллеливать операции для ускорения вычислений. Фактически, R критиковали за использование только одного процессора одновременно. Параллельный пакет позволяет выполнять задачи на разных ядрах машины.

Резюме

Короче говоря, R — отличный инструмент для изучения и анализа данных. Сложный анализ, такой как кластеризация, корреляция и сжатие данных, выполняется с помощью R. Это самая важная часть: без хорошей разработки функций и модели развертывание машинного обучения не даст значимых результатов.