Сегодня R — один из самых популярных скриптовых языков для статистического программирования. Спрос на R-программистов постоянно растет с начала 2010-х годов, и R по-прежнему пользуется статусом языка программирования, предназначенного для специалистов по данным.
Кроме того, в наши дни язык R был адаптирован для глубокого обучения, благодаря чему несколько статистиков смогли легко освоить глубокое обучение в своих областях, что сделало R незаменимой частью текущего развития ИИ.
Читайте также: Как установить язык R на удаленный сервер
История создания языка R
Языку R предшествовал язык под названием S (где S означает statistics, статистика), разработанный AT&T специально для выполнения статистических вычислений. AT&T начала работу над S в 1976 году, и этот язык был частью ее внутренней среды статистического анализа, ранее реализованной в виде библиотек FORTRAN.
Язык S был придуман Джоном Чемберсом. На выбор однобуквенного имени разработчиков вдохновил широко распространенный на то время язык программирования C.
Разработали язык R Росс Ихака и Росс Джентльмен. Это произошло в рамках проекта, задуманного в 1992 году в Оклендском университете в Новой Зеландии. Первая версия была выпущена в 1995 году, а первая стабильная бета-версия появилась в 2000 году.
Изначально R отличался от S тем, что поверх существующих функций S добавлял семантику лексической области действия. Однобуквенное имя R было теперь вдохновлено языком-предшественником S, но в этот раз дял названия взяли первую букву имен обоих авторов.
R был разработан под общедоступной лицензией GNU и свободно распространяется.
Позже корпорация TIBCO, которая купила язык программирования S у AT&T, преобразовала его в S-plus, добавив некоторые расширенные аналитические функции и возможности ООП.
Особенности программирования на R
- Независимость от платформы: данный язык работает на нескольких вычислительных платформах, таких как Windows, Linux и Mac OS.
- Портативность: он легко запускается на мобильных устройствах, планшетах и игровых консолях.
- Частые обновления: благодаря этому разработчики своевременно исправляют ошибки.
- Превосходная графика: язык совместим с графическими библиотеками, такими как ggplot2 и plotly, что обеспечивает качественную визуализацию.
- Универсальность: ежедневно сообщество разрабатывает и улучшает сотни пакетов для тех или иных целей.
Преимущества программирования на R
R по-прежнему остается более широко используемым языком статистического программирования по сравнению с S и S-plus, и это неудивительно, ведь он имеет много достоинств и преимуществ.
- R был разработан с целью создать реализацию S с открытым исходным кодом, поэтому R всегда будет оставаться открытым программным обеспечением.
- С R работают тысячи профессиональных ученых и статистиков, которые постоянно совершенствуют его.
- R совместим с Windows, Mac и Linux. Он работает практически везде и не занимает много места.
- Помимо функций статистической обработки, R также можно использовать в качестве общего языка программирования с возможностями функционального и объектно-ориентированного программирования.
- Благодаря поддержке ggplot2 и plotly R обладает гораздо более высококачественными возможностями визуализации по сравнению с некоторыми коммерческими продуктами.
- Графика, предоставляемая R, красивее по сравнению с другими языками и высоко ценится экспертами во всем мире.
- Изначально R не поставляется с графическим пользовательским интерфейсом. В качестве входных данных он принимает только команды, что позволяет легко сохранять их в виде сценариев и переносить их между доменами.
- Сеансами R можно эффективно управлять. История команд и данные сохраняются между сеансами, поэтому вы можете без особых хлопот продолжить работу с того места, где остановились.
- R поддерживается широким онлайн-сообществом разработчиков.
Недостатки R
R считается наименее критикуемым языком программирования. Однако, несмотря на все свои преимущества, R, как и любой другой язык, далек от совершенства. Прежде чем погрузиться в изучение R, полезно также помнить о недостатках этого языка.
- Слишком резкая кривая обучения: R — непростой язык. Новичкам трудно освоить его из-за интерфейса командной строки. Кроме того, широкий выбор пакетов может сначала сбить с толку. Такие IDE, как RStudio, в некоторой степени помогают смягчить этот недостаток.
- Высокие требования к физической памяти: в отличие от своего конкурента Python, R хранит все данные в физической памяти. Это затрудняет обработку огромных наборов данных. К счастью, в наши дни интегрировать Hadoop в R стало значительно проще, что в сильно упростило проблему.
- Медленное выполнение: код R требует значительной оптимизации, прежде чем он сможет работать так же быстро, как в MATLAB или Python. Чтобы избежать медленного выполнения, при разработке программы необходимо иметь глубокое понимание внутренней работы объектов.
Доступность языка R
R доступен как среда интерфейса командной строки в проекте CRAN (данная аббревиатура расшифровывается как Comprehensive R Archive Network). Однако новичкам проще начинать работу с помощью IDE, которых для R разработано довольно много.
- RStudio: самая популярная среда IDE для начала работы с R. Доступна как настольная, так и корпоративная ее версии.
- StatET: основанная на Eclipse IDE-среда для программирования R и сборки пакетов.
- ESS-R: R также поддерживает несколько статистических пакетов, таких как S-Plus, SAS, Stata и OpenBUGS/JAGS.