Как перестать бояться и полюбить R. Часть 1. Мотивационная
Свой вход в профессиональную HR-аналитику [1], как и многие мои коллеги, я отсчитываю от момента знакомства с Эдуардом Бабушкиным [2] и его работой. Довольно скоро, обучаясь на курсах Эдуарда я узнал от него про язык программирования R [3], про который я до того момента не слышал. В этой короткой серии я хочу поговорить о мотивации изучать R, дать короткий гайд по инструменту и привести пример анализа данных. R понадобится нам в дальнейшем, так как всю продвинутую аналитику мы будем делать именно на нём.
Я не программист поэтому код писать не смогу!
Довольно часто люди, которые далеки от программирования и технических профессий склонны впадать в уныние и утверждать, что они не программисты поэтому программировать они не смогут. Задумайтесь нужно ли быть профессиональным поваром чтобы готовить еду? Вы готовите еду? Вы профессиональный повар?
Если говорить о моём образовании, то я недоучившийся историк, дипломированный специалист по психологии и магистр по управлению человеческими ресурсами. Ни одна из этих профессий не предполагает обучения программированию, тем не менее я пишу код на R и нескольких других языках. Не пытайтесь искать оправдания в этом. Для того, чтобы писать код не нужно быть программистом, также как не надо быть поваром, чтобы приготовить себе еду.
Какие есть альтернативы? Сразу разберем почему не дашборды – потому что, строго говоря, это вообще не аналитика. Визуализация данных крайне важна в процессе анализа, но представляет только одну из частей этого процесса.
Что насчёт решений для анализа данных с интерфейсом? Это же проще, чем писать код скажут многие! Будучи студентом мне приходилось использовать различные для анализа данных коробочные решения: на психфаке это была StatSoft STATISTICA [4], а на экономе IMB SPSS [5]. На своём канале я таже давал обзор Jamovi [6], этот же ряд можно пополнить пакетом «Анализ данных» в Excel.
И все эти варианты безоговорочно проигрывают коду в R. И причин целая масса, вот три на самой поверхности:
- дороговизна некоторых пакетов;
- масштаб комьюнити в интернете, которому можно задавать вопросы;
- проблема воспроизводимости исследования (нужно реально жать на кнопки);
- новые типы анализа и функции появляются с большим опозданием, если появляются вообще.
Зачем всё это нужно – если можно получить максимум возможностей, поддержки и свободы в бесплатном опенсорсном решении?
Почему R, а не Python?
Самый деструктивный и бессмысленный тип дискуссий, который существует, на мой взгляд, это обсуждение какой из инструментов выбрать для анализа данных: R или Python? Обычно холиварный ряд сравнения можно продолжить - PowerBI или Tableau, Windows или MacOS, Android или iPhone и т.д. Люди годами ломают копья на этих темах, оба лагеря ведут беспощадную войну на просторах интернета. В то время как можно взять всё это время и потратить на знакомство и с тем, и с другим, а главное пользы будет больше.
Если подыскивать подходящее сравнение этого конфликта, то для меня оно такое – ответьте на вопрос, если вы умеете пользоваться ложкой во время еды, то освобождает ли это вас от умения использовать вилку? А нож?
Ответ на вопрос, что же учить R или Python очень прост – учить оба инструмента. Более того надо быть готовым, что придется ещё много чего другого учить, к примеру, для меня с февраля прошлого года стал необходимым базовый уровень JavaScript.
По собственному опыту и на основе многочисленных бесед с коллегами, когда речь заходит о том, какими навыками должен обладать аналитик, то я склонен утверждать, что главное это гибкость и готовность непрерывно обучаться новому и переучиваться. Моя повседневная работа – это использование: R для задач продвинутой аналитики, Python для автоматизации и прочих технических задач.
Следующий аргумент — это количество книг по анализу данных на R. У издательства Springer есть отдельная серия Use R! [7], которая составляет существенную часть моей электронной библиотеки или точнее моих знаний про современный анализ данных. Но не только Springer пишет про R. К примеру, Ричард МакЭлрит – директор института эволюционной антропологии Макса Планка и автор книги Statistical Rethinking [8], в которой он описывает современный взгляд на статистику, а в качестве инструмента использует R. Важно заметить, что кроме того, что Ричард пишет код на R в своей книге, он, как и другие исследователи и/или аналитики, создает библиотеки функций именно для среды R, обогащая тем самым арсенал инструментов современного аналитика.
И напоследок, сейчас читаю книгу, которую мне порекомендовал Юрий Тукачев – автор телеграм-каналов People Analytics [9] и Weekly Charts [10]. По-русски эта книга называется «Введение в искусственную психологию. Применение нечеткого множества и глубокого машинного обучения в психологических исследованиях с использованием R» [11], название многое говорит о том, куда идёт мировая исследовательская психология.
С чего начать изучение
Самое выдающиеся в океане информации по R, что он не рассматривается или практически не рассматривается в отдельности от аналитических и статистических задач. Именно поэтому какую бы книгу, статью, курс, видеоролик или пост вы бы не выбрали они все будут в первую очередь рассказывать вам про анализ данных и показывать, как его можно выполнять с помощью такого инструмента как R.
Я человек книжный поэтому не могу начать ни с чего другого, как с рекомендации книг. Я уже упоминал серию книг Use R! [7], если вы читаете на английском, то в первую очередь обратите внимание на них. Но книги про R есть и на русском и даже доступны on-line. На памятном фото в начале статьи Эдуард Бабушкин дарит мне книгу «R в действии» Роберта Кабакова [12], которая может служить отличным началом, в этот же ряд можно добавить ещё классики от Мастицкого С.Э. и Шитикова В.К. [13, 14], а также книгу «Основы статистики для психологов» Кричевец А.Н. и др. [15]
Всем, кто начинает изучать R сейчас повезло гораздо больше, чем мне потому как в их распоряжении есть специализация из пяти курсов от биологов СПбГУ – «Просто о статистике (с использованием R)» [16], которой ещё не существовало, когда я начинал. Это потрясающий материал, который позволит вам убить двух зайцев одним выстрелом – разобраться в статистке и научится пользоваться R.
Телеграм-каналы, которые посвящены R или используют его: R4marketing [17], People Analytics [9] и Weekly Charts [10], Статистика и R [18]. Автор телеграм-канала R4marketing также ведет одноименный канал на YouTube [19].
Это самый короткий перечень рекомендаций, который уместно дать. Полагайтесь на свою любознательность, и вы сможете найти ещё очень много интересного и полезного!
- Интервью для DEYNEKINA HR&BA
- HR-аналитика
- https://ru.wikipedia.org/wiki/R_(язык_программирования)
- https://statsoft.ru/
- https://www.ibm.com/spss
- Ботвин А. Обзор Jamovi
- Use R!
- McElreath R. Statistical Rethinking
- People Analytics
- Weekly Charts
- Farahani H. An Introductory to Artificial Psychology. Application Fuzzy Set and Deep Machine Learning in Psychological Research Using R
- Кабаков Р. «R в действии»
- Мастицкий С.Э. Статистический анализ и визуализация данных
- Шитиков В. Классификация, регрессия и другие алгоритмы Data Mining с использованием R
- Основы статистики для психологов
- Просто о статистике
- R4marketing
- Статистика и R
- R4marketing (YouTube)