Введение
О курсе
Мое знакомство с языком R началось в 2016 году, когда я решил использовать его для сбора данных через API из различных рекламных платформ. Для некоторых из них уже существовали готовые решения в виде пакетов, но для менее известных площадок пришлось создавать собственные инструменты. Тогда я столкнулся с ограниченностью существующих ресурсов и решил самостоятельно разобраться в создании R-пакетов.
На тот момент подробных руководств было мало, и я приходил к пониманию процесса методом проб и ошибок. Используя базовые функциональности R, такие как функция package.skeleton(), я разрабатывал пакеты. Этот опыт был насыщен избытком ненужной ручной работы, например я руками редактировал все .Rmd
файлы, из которых далее генерируются HTML файлы с документацией к функциям.
Сегодня в главном хранилище R-пакетов - CRAN, опубликовано 15 моих собственных пакетов. За годы разработки я столкнулся с различными трудностями, но мой опыт привел меня к замечательной книге Хедли Викхема и Дженни Брайан "R Packages (2e)", которая послужила основой для этого курса.
Тем не мене, курс не является полным повторением книги, я упустил из его программы наиболее теоритеские главы, но добавил некоторые темы, не упомянутые в ней. В Результате данный курс сконцентрировал в себе передовые методики разработки пакетов описанные Викхемом и Брайан, дополненные моим семилетним практическим опытом.
Разработка R-пакетов - отличный способ улучшить навыки программирования на R и глубже погрузиться в изучение языка. Этот курс шаг за шагом проведет вас через процесс создания собственных пакетов. Первый урок позволит вам написать свой первый пакет. Более того, вы сможете внести свой вклад в развитие языка, делясь своими наработками в виде R-пакетов.
Добро пожаловать на курс "Разработка пакетов на языке R"! Удачи в его прохождении!
Для кого этот курс
Данный курс я не могу рекомендовать новичкам. Заниматься разработкой пакетов лучше имея за плечами определённый опыт написания кода на R. Поэтому не стоит начинать изучения R с данного курса, ниже я дам небольшую подборку подготовительных курсов, изучив которые можно попробовать себя в разработке пакетов.
По поводу поддержки обучающихся на данном курса
Важно! Поддержки учащихся на этом курсе со стороны автора нет. Я не занимаюсь частными консультациями, тем более не консультирую студентов бесплатных курсов. Поэтому не имеет никакого смысла писать мне в личку или на почту просьбы помочь с прохождением этого, или любого другого моего бесплатного курса. Если вы столкнулись с трудностями при прохождении курса и вам нужна помощь, то все вопросы можно адресовать в следующие telegram чаты:
Отдельного чата со студентами непосредственно этого курса не существует, но при желании вы самостоятельно можете его организовать, и я с радостью добавлю на него ссылку.
К тому же, если у вас есть вопросы по одной из лекций курса, вы можете задавать его под видео лекции на YouTube, это приветствуется, и на такие комментарии я с радостью отвечу.
Буду рад любой конструктивной критике, и предложениям по улучшению курса "разработка пакетов на языке R", направлять их можно мне на почту selesnow@gmail.com. Если вы хотите выразить благодарность мне за курс, то в конце раздела описано как это можно сделать.
Рекомендации по прохождению курса
Данный курс состоит из 14 видеолекций общей продолжительностью более 6 часов. В конце каждого урока вы найдете небольшой тест или задание для закрепления материала лекции. Прохождение тестов не является обязательным, тем не менее я крайне советую пройти тест после просмотра лекции. Тесты помогут акцентировать ваше внимание на наиболее важных моментах урока и проверить, насколько вы усвоили материал.
Также каждый урок содержит конспект лекции. Для достижения максимального эффекта от обучения и дальнейшего использования полученных знаний, придерживайтесь следующего алгоритма:
- Посмотрите полное видео лекции.
- Пройдите тест или выполните задание к уроку.
- В дальнейшем, при разработке пакета, ищите нужную информацию в конспекте лекции или найдите в тайм-кодах время нужной части лекции и пересмотрите его. Таким образом, вы пройдете весь материал курса и сможете быстро в дальнейшем пересмотреть отдельно нужную вам его часть при разработке ваших пакетов.
Об авторе
Меня зовут Алексей Селезнёв, с 2008 года я являюсь практикующим аналитиком. На данный момент основной моей деятельностью является развитие отдела аналитики в агентстве интернет-маркетинга Netpeak.
Мною были разработаны такие R пакеты как: rgoogleads
, rfacebookstat
, timeperiodsR
и некоторые другие. На данный момент написанные мной пакеты только с CRAN были установленны более 200 000 раз.
Также я являюсь автором некоторых других курсов по R (ссылки на них приведу ниже), лектором академии Web Promo Experts и соавтором курса "Веб-аналитика Pro".
Веду свой авторский Telegram и YouTube канал R4marketing. Буду рад видеть вас в рядах подписчиков.
Периодически публикую статью на различных интернет медиа, зачастую это Хабр и Netpeak Journal.
Неоднократно выступал на профильных конференциях по аналитике и интернет маркетингу, среди которых Матемаркетинг, GoAnalytics, Analyze, eCommerce, 8P и прочие.
Другие курсы автора
Как я уже писал выше, помимо курса "Разработка пакетов на языке R" у меня есть ряд других бесплатных курсов:
- Язык R для интернет маркетинга, для начинающих, требуется бесплатная регистрация
- Язык R для пользователей Excel, для начинающих
- Введение в dplyr 1.0.0, средней уровень сложности
- Циклы и функционалы в языке R, средней уровень сложности
- Разработка telegram ботов на языке R, высокий уровень сложности
Каналы автора
Если вы интересуетесь языком R, применяете его в работе, или планируете изучать, то думаю вам будут интересны мои каналы, о которых я писал выше. Буду рад видеть вас среди подписчиков:
Программа курса
- Обзор рабочего процесса разработки пакета
- Настройка системы и интеграция с GitHub
- Рекомендации по организации R кода
- Добавление данных в пакет
- DESCRIPTION - Метаданные пакета
- NAMESPACE - Зависимости пакета
- Разработка юнит-тестов к функциям пакета (пакет testthat)
- Написание документации к функциям пакета
- Виньетки и прочая опциональная документация пакета
- Разработка сайта пакета (пакет pkgdown)
- Публикация в CRAN
- Разработка пакета обёртки над API (пакет httr2)
- Разработка пакета обёртки для Google API (пакет gargle)
- Как создать коллекцию пакетов
Дата обновления курса: 25.11.2023
Благодарности автору
Курс, и все сопутствующие материалы предоставляются бесплатно, но если у вас есть желание отблагодарить автора за этот видео курс вы можете перечислить любую произвольную сумму на этой странице.
Либо с помощью кнопки:Так же вы можете поделиться ссылкой на курс у себя в соц сетях, за что я тоже буду вам благдарен!