Що таке мова програмування R? Вступ і основи R
Що таке програмне забезпечення R?
R це мова програмування та вільне програмне забезпечення, розроблене Россом Іхакою та Робертом Джентльменом у 1993 році. R має великий каталог статистичних і графічних методів. Він включає в себе алгоритми машинного навчання, лінійну регресію, часові ряди, статистичні висновки, щоб назвати декілька. Більшість бібліотек R написані мовою R, але для важких обчислювальних завдань C, C++ та FortraПереважними є коди n.
R довіряють не лише науковці, але й багато великих компаній також використовують мову програмування R, зокрема Uber, Google, Airbnb, Facebook тощо.
Аналіз даних за допомогою R виконується в кілька кроків; програмування, перетворення, виявлення, моделювання та передача результатів
- програма: R — зрозумілий і доступний інструмент програмування
- Перетворення: R складається з колекції бібліотек, розроблених спеціально для науки про дані
- Відкрийте для себе: Дослідіть дані, уточніть свою гіпотезу та проаналізуйте їх
- Модель: R надає широкий набір інструментів для отримання потрібної моделі для ваших даних
- Комунікація : інтегруйте коди, графіки та результати у звіт за допомогою R Markdown або створюйте програми Shiny, щоб поділитися ними зі світом
Для чого використовується R?
- Статистичний висновок
- Аналіз даних
- Алгоритм машинного навчання
R за галуззю
Якщо ми розподілимо використання R за галузями, ми побачимо, що науковці на першому місці. R — це мова для статистики. R є першим вибором у галузі охорони здоров’я, за яким йдуть уряд і консалтинг.
R пакет
Основним використанням R є і завжди буде статистика, візуалізація та машинне навчання. На зображенні нижче показано, який пакет R отримав найбільше запитань у Stack Overflow. У топ-10 більшість із них пов’язані з робочим процесом спеціаліста з обробки даних: підготовка даних і передача результатів.
Усі бібліотеки R, майже 12k, зберігаються в CRAN. CRAN є безкоштовним і відкритим кодом. Ви можете завантажити та використовувати численні бібліотеки для виконання машинне навчання або аналіз часових рядів.
Спілкуйтеся з Р
У R є кілька способів представити роботу та поділитися нею: через документ уцінки або блискучу програму. Все можна розмістити в Rpub, GitHub або на веб-сайті компанії.
Нижче наведено приклад презентації, розміщеної на Rpub
Rstudio приймає уцінку для написання документа. Ви можете експортувати документи в різних форматах:
- документ:
- HTML
- PDF/латекс
- слово
- Презентація
- HTML
- Проектор PDF
У Rstudio є чудовий інструмент для легкого створення програми. Нижче наведено приклад програми з даними Світового банку.
Навіщо використовувати R?
Наука про дані формує те, як компанії ведуть свій бізнес. Без сумніву, відмова від штучного інтелекту та машин призведе компанію до краху. Головне питання полягає в тому, який інструмент/мову слід використовувати?
На ринку представлено безліч інструментів для аналізу даних. Вивчення нової мови вимагає певних витрат часу. На малюнку нижче зображено криву навчання порівняно з можливостями бізнесу, які пропонує мова. Негативний зв'язок означає, що безкоштовного обіду не буває. Якщо ви хочете отримати найкраще розуміння даних, вам потрібно витратити деякий час на вивчення відповідного інструменту, яким є R.
У верхньому лівому куті графіка ви можете побачити Excel і PowerBI. Ці два інструменти прості в освоєнні, але вони не пропонують видатних можливостей для бізнесу, особливо в плані моделювання. Посередині видно Python і SAS. SAS — це спеціальний інструмент для статистичного аналізу для бізнесу, але він не є безкоштовним. SAS — це програмне забезпечення, яке дає змогу клікнути й запустити. Pythonоднак це мова з монотонною кривою навчання. Python є фантастичним інструментом для розгортання машинного навчання та штучного інтелекту, але йому бракує комунікаційних функцій. З ідентичною кривою навчання R є хорошим компромісом між реалізацією та аналізом даних.
Що стосується візуалізації даних (DataViz), ви, мабуть, чули про Tableau. Tableau, без сумніву, є чудовим інструментом для виявлення закономірностей за допомогою графіків і діаграм. Крім того, вивчення Tableau не займає багато часу. Однією з великих проблем із візуалізацією даних є те, що ви можете так і не знайти шаблон або просто створити багато марних діаграм. Tableau — хороший інструмент для швидкої візуалізації даних або Business Intelligence. Коли мова заходить про статистику та інструмент прийняття рішень, R є більш доречним.
Stack Overflow — це велика спільнота мов програмування. Якщо у вас є проблеми з кодуванням або вам потрібно зрозуміти модель, Stack Overflow тут, щоб допомогти. За рік відсоток переглядів запитань різко зріс для R порівняно з іншими мовами. Звичайно, ця тенденція тісно пов’язана з розквітом науки про дані, але вона відображає попит на мову R для науки про дані.
У науці про дані є два інструменти, які конкурують один з одним. R і Python це, ймовірно, мова програмування, яка визначає науку про дані.
Чи варто вибрати R?
Науковці даних можуть використовувати два чудові інструменти: R і Python. Ви можете не встигнути вивчити їх обидва, особливо якщо починаєте вивчати науку про дані. Вивчення статистичного моделювання та алгоритму набагато важливіше, ніж вивчити мову програмування. А мова програмування це інструмент для обчислення та передачі вашого відкриття. Найважливішим завданням у науці про дані є спосіб роботи з даними: імпорт, очищення, підготовка, розробка функцій, вибір функцій. Це має бути вашим головним завданням. Якщо ви намагаєтесь вивчити R і Python в той же час без серйозного досвіду в статистиці, це проста дурість. Науковці даних не є програмістами. Їх робота полягає в тому, щоб зрозуміти дані, маніпулювати ними та виявити найкращий підхід. Якщо ви думаєте, яку мову вивчати, давайте подивимося, яка мова вам найбільше підходить.
Основна аудиторія науки про дані – це бізнес-професіонали. У бізнесі одним великим наслідком є спілкування. Є багато способів спілкування: звіт, веб-додаток, інформаційна панель. Вам потрібен інструмент, який робить усе це разом.
R складно?
Багато років тому мову R було складно опанувати. Мова була заплутаною та не такою структурованою, як інші інструменти програмування. Щоб подолати цю серйозну проблему, Гедлі Вікхем розробив колекцію пакетів під назвою tidyverse. Правила гри змінилися на краще. Маніпуляції з даними стають тривіальними та інтуїтивно зрозумілими. Створення графіка вже не було таким складним.
Найкращі алгоритми для машинного навчання можна реалізувати за допомогою R. Такі пакети, як Keras і TensorFlow, дозволяють створювати техніку машинного навчання високого класу. У R також є пакет для виконання Xgboost, одного з найкращих алгоритмів для конкуренції Kaggle.
R може спілкуватися іншою мовою. Є можливість дзвонити Python, Java, C++ у R. Світ великих даних також доступний для R. Ви можете підключити R до різних баз даних, наприклад Spark або Hadoop.
Нарешті, R розвинувся і дозволив розпаралелювати операції для прискорення обчислень. Насправді R критикували за використання лише одного ЦП одночасно. Паралельний пакет дозволяє виконувати завдання в різних ядрах машини.
Підсумки
Коротше кажучи, R — чудовий інструмент для вивчення та дослідження даних. Ретельний аналіз, як-от кластеризація, кореляція та скорочення даних, виконується за допомогою R. Це найважливіша частина, без якісної розробки функцій і моделі розгортання машинного навчання не дасть значущих результатів.