В учебник "Разработка telegram ботов на языке R" добавлена глава "Добавляем боту асинхронность"
Очередное обновление учебника. На этот раз я добавил главу посвящённую асинхронности бота.
Содержание главы:
1. Что такое асинхронное программирование
2. Пример последовательного бота с поддержкой длительных команд
3. Многопоточность в R
4. Используем future для построения асинхронного бота
5. Управление количеством потоков
6. Функция
#курсы_по_R
Очередное обновление учебника. На этот раз я добавил главу посвящённую асинхронности бота.
Содержание главы:
1. Что такое асинхронное программирование
2. Пример последовательного бота с поддержкой длительных команд
3. Многопоточность в R
4. Используем future для построения асинхронного бота
5. Управление количеством потоков
6. Функция
promises::future_promise()
7. Заключение#курсы_по_R
Курс "Разведывательный анализ данных с помощью языка R"
Лекторы:
● Пензар Дмитрий Дмитриевич
● Жарикова Анастасия Александровна
● Валяева Анна Александровна
Курс состоит из 15 лекций и 15 практических занятий, разделенных на 4 логических блока:
● введение в R
● манипуляции с данными табличного типа
● визуализация данных
● статистическая обработка
Список лекций:
1. Введение в базовый R. Работа с векторами.
2. Работа с данными табличного типа.
3. Введение в Tidyverse.
4. Строки и графика
5. Ggplot2 графика.
6. Теория вероятностей. Статистика.
7. Непрерывные случайные величины. Центральная предельная теорема.
8. Tidyverse. Как смотреть на данные.
9. Функции. Функциональное программирование.
10. Работа с табличными данными. Продвинутый dplyr.
11. Теплокарты и другие рисунки.
12. Альтернативы, виды t-тестов и доверительный интервал.
13. Множественное тестирование и корреляция.
Ссылки:
- видео лекции
- материалы
- о курсе
#курсы_по_R
Лекторы:
● Пензар Дмитрий Дмитриевич
● Жарикова Анастасия Александровна
● Валяева Анна Александровна
Курс состоит из 15 лекций и 15 практических занятий, разделенных на 4 логических блока:
● введение в R
● манипуляции с данными табличного типа
● визуализация данных
● статистическая обработка
Список лекций:
1. Введение в базовый R. Работа с векторами.
2. Работа с данными табличного типа.
3. Введение в Tidyverse.
4. Строки и графика
5. Ggplot2 графика.
6. Теория вероятностей. Статистика.
7. Непрерывные случайные величины. Центральная предельная теорема.
8. Tidyverse. Как смотреть на данные.
9. Функции. Функциональное программирование.
10. Работа с табличными данными. Продвинутый dplyr.
11. Теплокарты и другие рисунки.
12. Альтернативы, виды t-тестов и доверительный интервал.
13. Множественное тестирование и корреляция.
Ссылки:
- видео лекции
- материалы
- о курсе
#курсы_по_R
В учебник "Разработка telegram ботов на языке R" добавлена глава про упаковку бота в Docker контейнер
Учебник посвящён разработке Telegram ботов, и в данной главе приводится пример по упаковке именно бота. Но, описанным способом можно упаковать в Docker, и запускать абсолютно любой R скрипт.
Содержание главы:
1. Что такое докер
2. Установка Docker
3. Создаём проект в RStudio
4. Код бота
5. Образы и контейнеры
6. Создание Dockerfile
7. Создание образа
8. Запуск контейнера
9. Прокидываем токен бота в контейнер при его запуске
10. Политика перезапуска бота
11. Просмотр списка запущенных контейнеров
12. Остановка контейнера
13. Удаление контейнера
14. Публикация образа в Docker hub
15. Как создать общую папку для хранения файлов
16. Полезные ссылки
17. Заключение
#курсы_по_R
Учебник посвящён разработке Telegram ботов, и в данной главе приводится пример по упаковке именно бота. Но, описанным способом можно упаковать в Docker, и запускать абсолютно любой R скрипт.
Содержание главы:
1. Что такое докер
2. Установка Docker
3. Создаём проект в RStudio
4. Код бота
5. Образы и контейнеры
6. Создание Dockerfile
7. Создание образа
8. Запуск контейнера
9. Прокидываем токен бота в контейнер при его запуске
10. Политика перезапуска бота
11. Просмотр списка запущенных контейнеров
12. Остановка контейнера
13. Удаление контейнера
14. Публикация образа в Docker hub
15. Как создать общую папку для хранения файлов
16. Полезные ссылки
17. Заключение
#курсы_по_R
Курс от Microsoft "Создание моделей машинного обучения с помощью языка R и tidymodels"
Узнайте, как изучать и анализировать данные с помощью языка R. Познакомьтесь с моделями регрессии, моделями классификации и моделями кластеризации с помощью tidymodels и языка R.
Содержание:
● Общие задачи по изучению и анализу данных.
● Использование
● Когда следует использовать модели регрессии.
● Как обучать и оценивать модели регрессии с помощью платформы
● Когда следует использовать модели классификации.
● Как обучать и оценивать модели классификации с помощью платформы
● Когда следует использовать модели кластеризации.
● Как обучать и оценивать модели кластеризации с помощью платформы
Предварительные требования:
● Базовые знания в области математики
● Некоторый опыт программирования на языке R
#курсы_по_R
Узнайте, как изучать и анализировать данные с помощью языка R. Познакомьтесь с моделями регрессии, моделями классификации и моделями кластеризации с помощью tidymodels и языка R.
Содержание:
● Общие задачи по изучению и анализу данных.
● Использование
ggplot2
, dplyr
, tidyr
и других пакетов языка R для преобразования необработанных данных с целью получить понимание, аналитические сведения и знания.● Когда следует использовать модели регрессии.
● Как обучать и оценивать модели регрессии с помощью платформы
tidymodels
.● Когда следует использовать модели классификации.
● Как обучать и оценивать модели классификации с помощью платформы
tidymodels
.● Когда следует использовать модели кластеризации.
● Как обучать и оценивать модели кластеризации с помощью платформы
tidymodels
.Предварительные требования:
● Базовые знания в области математики
● Некоторый опыт программирования на языке R
#курсы_по_R
Бесплатный курс "Разработка пакетов на языке R"
Друзья, идея записи курса по разработке пакетов у меня появилась ещё несколько лет назад, но всё никак не доходили руки до реализации, и вот наконец я записал первый урок, и создал проект самого курса.
О курсе
В основе курса будет лежать книга Хедли Викхема "R Packages (2e)", тем не менее курс не будет полным её повторением, некоторые главы из книги я опущу, и кое что наоборот добавлю.
Окончательной программы курса пока нет, на данный момент готов первый урок, сам курс находится в стадии разработки, следить за его развитием вы можете на странице новостей курса.
Тайм коды первого урока:
00:00 Вступление
00:43 Как создать проект пакета
01:50 Структура проекта пакета
02:47 Добавляем проекту контроль версий
03:14 Как добавить функцию в свой пакет
04:17 Как загрузить текущий пакет (load_all())
05:05 Как запустить проверку пакета (check())
05:56 Файл DESCRIPTION
06:52 Добавляем лицензию пакету
07:08 Добавляем документацию к функциям пакета
09:47 Файл NAMESPACE
10:10 Добавляем юнит тесты для функций пакета
13:34 Как использовать в своём пакете функции из других пакетов
16:46 Обзор всего рабочего процесса
19:03 Заключение
Точных дат публикации следующих уроков нет, буду их записывать и публиковать по мере наличия свободного времени, coming soon.
Приблизительную программу курса постараюсь сформировать и добавить в течении этой недели.
Ссылки:
- сайт курса
- ссылка на первый урок на YouTube
#курсы_по_R
Друзья, идея записи курса по разработке пакетов у меня появилась ещё несколько лет назад, но всё никак не доходили руки до реализации, и вот наконец я записал первый урок, и создал проект самого курса.
О курсе
В основе курса будет лежать книга Хедли Викхема "R Packages (2e)", тем не менее курс не будет полным её повторением, некоторые главы из книги я опущу, и кое что наоборот добавлю.
Окончательной программы курса пока нет, на данный момент готов первый урок, сам курс находится в стадии разработки, следить за его развитием вы можете на странице новостей курса.
Тайм коды первого урока:
00:00 Вступление
00:43 Как создать проект пакета
01:50 Структура проекта пакета
02:47 Добавляем проекту контроль версий
03:14 Как добавить функцию в свой пакет
04:17 Как загрузить текущий пакет (load_all())
05:05 Как запустить проверку пакета (check())
05:56 Файл DESCRIPTION
06:52 Добавляем лицензию пакету
07:08 Добавляем документацию к функциям пакета
09:47 Файл NAMESPACE
10:10 Добавляем юнит тесты для функций пакета
13:34 Как использовать в своём пакете функции из других пакетов
16:46 Обзор всего рабочего процесса
19:03 Заключение
Точных дат публикации следующих уроков нет, буду их записывать и публиковать по мере наличия свободного времени, coming soon.
Приблизительную программу курса постараюсь сформировать и добавить в течении этой недели.
Ссылки:
- сайт курса
- ссылка на первый урок на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #1: Обзор рабочего процесса
Первый урок курса "Разработка пакетов на языке R", в ходе которого мы кратко рассмотрим весь процесс по разработке собственного пакета от создания проекта до тестирования его первой версии.
Пакеты рассмотренные в уроке:
- devtools
- usethis
- testthat
-…
Пакеты рассмотренные в уроке:
- devtools
- usethis
- testthat
-…
Опубликован 2ой урок курса "Разработка пакетов на языке R": Настройка системы и интеграция RStudio с GitHub
Помимо второго урока на главной странице курса опубликована полная программа курса.
Во втором уроке мы с вами настраиваем среду для разработки пакетов, и настраиваем интеграцию между RStudio и GitHub.
Тайм коды второго урока:
00:00 Вступление
00:50 Настройка дефолтных опций пакета usethis
05:13 Установка утилиты rtools
06:38 Регистрация на GitHub
08:15 Установка Git
09:53 Установка учётных данных в Git
11:27 Создание персонального токена на GitHub
15:04 Проверяем систему на готовность к компиляции пакетов
15:40 Отправка пакета из RStudio на GitHub
17:25 Обзор всего процесса настройки системы для разработки пакетов и интеграции RStudio с GitHub
18:43 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
Помимо второго урока на главной странице курса опубликована полная программа курса.
Во втором уроке мы с вами настраиваем среду для разработки пакетов, и настраиваем интеграцию между RStudio и GitHub.
Тайм коды второго урока:
00:00 Вступление
00:50 Настройка дефолтных опций пакета usethis
05:13 Установка утилиты rtools
06:38 Регистрация на GitHub
08:15 Установка Git
09:53 Установка учётных данных в Git
11:27 Создание персонального токена на GitHub
15:04 Проверяем систему на готовность к компиляции пакетов
15:40 Отправка пакета из RStudio на GitHub
17:25 Обзор всего процесса настройки системы для разработки пакетов и интеграции RStudio с GitHub
18:43 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #2: Настройка системы и интеграция с GitHub
Данный урок посвящён настройке вашей операционной системы и среды для разработки пакетов. Мы установим всё необходимое программное обеспечение, зарегистрируем бесплатный аккаунт на GitHub и настроим интеграцию между RStudio и GitHub.
|==================…
|==================…
Опубликован 3 урок курса "Разработка пакетов на языке R": Организация R-кода вашего пакета
——————————
Друзья, так же подписывайтесь на youtube канал, и буду благодарен за репосты информации о курсе в ваших соц. сетях.
——————————
В этом уроке мы разберёмся с базовыми рекомендациями по организации кода вашего пакета, а так же узнаем чем принципиально отличается разработка пакета от написания обычного R сценария.
Тайм коды:
00:00 Вступление
00:44 Из каких компонентов состоит пакет
01:07 Как организовать функции пакета в файлы
03:55 Про функции
05:32 Не изменяйте настройки глобальной среды R: функция
14:09 Как задать локальные опции пакета, функция
17:10 Код пакета определённый вне функций
18:20 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
Предыдущие урок:
1. Обзор рабочего процесса
2. Настройка системы и интеграция RStudio с GitHub
#курсы_по_R
——————————
Друзья, так же подписывайтесь на youtube канал, и буду благодарен за репосты информации о курсе в ваших соц. сетях.
——————————
В этом уроке мы разберёмся с базовыми рекомендациями по организации кода вашего пакета, а так же узнаем чем принципиально отличается разработка пакета от написания обычного R сценария.
Тайм коды:
00:00 Вступление
00:44 Из каких компонентов состоит пакет
01:07 Как организовать функции пакета в файлы
03:55 Про функции
library()
и source()
в коде пакет05:32 Не изменяйте настройки глобальной среды R: функция
on.exit()
и пакет withr
14:09 Как задать локальные опции пакета, функция
.onLoad()
17:10 Код пакета определённый вне функций
18:20 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
Предыдущие урок:
1. Обзор рабочего процесса
2. Настройка системы и интеграция RStudio с GitHub
#курсы_по_R
YouTube
Разработка пакетов на R #3: Организация R кода в пакете
В этом уроке мы разберёмся с базовыми рекомендациями по организации кода вашего пакета, а так же разберёмся чем принципиально отличается разработка пакета от написания обычного R сценария.
|===========================================|
Тайм коды:
00:00 Вступление…
|===========================================|
Тайм коды:
00:00 Вступление…
Опубликован 4 урок курса по разработке пакетов: Как и зачем добавлять данные в ваш пакет
В этом видео мы поговорим о том, зачем вам может понадобиться добавить в ваш пакет помимо кода функций ещё и данные, и разберём 5 способов это сделать.
Тайм коды:
00:00 Введение
00:35 Зачем добавлять данные в пакет
02:08 Экспортируемые данные
05:20 Внутренние данные пакета
07:57 Необработанные данные
13:51 Состояние пакета (внутренняя среда пакета)
16:30 Постоянные пользовательские данные
18:30 Прочие каталоги пакета
19:33 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
В этом видео мы поговорим о том, зачем вам может понадобиться добавить в ваш пакет помимо кода функций ещё и данные, и разберём 5 способов это сделать.
Тайм коды:
00:00 Введение
00:35 Зачем добавлять данные в пакет
02:08 Экспортируемые данные
05:20 Внутренние данные пакета
07:57 Необработанные данные
13:51 Состояние пакета (внутренняя среда пакета)
16:30 Постоянные пользовательские данные
18:30 Прочие каталоги пакета
19:33 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #4: Как и зачем добавлять данные в пакет
В этом видео мы разберёмся с тем для чего вам может понадобиться добавить в ваш пакет помимо кода функций ещё и данные, и разберём 5 способов это сделать.
Тайм коды:
00:00 Введение
00:35 Зачем добавлять данные в пакет
02:08 Экспортируемые данные
05:20 Внутренние…
Тайм коды:
00:00 Введение
00:35 Зачем добавлять данные в пакет
02:08 Экспортируемые данные
05:20 Внутренние…
Уроки по R от ravesli
Самоучитель по R, который в данный момент находится в стадии разработки. На данный момент идёт работа над третьим разделом.
Содержание:
1. Вступление
1.1. Введение в язык программирования R
1.2. Интересные факты о языке программирования R
1.3. Язык R в сравнении с Python
1.4. Как установить RStudio в Windows и Linux?
1.5. Введение в RStudio
1.6. Создание и выполнение R-файла в RStudio
1.7. Комментарии в R
1.8. Переменные и константы в R
1.9. Типы данных в R
1.10. Функции вывода в R
1.11. Числа в R
2. Управление потоком выполнения программы в R
2.1. Операторы сравнения и логические операторы в R
2.2. Условные операторы if…else в R
2.3. Функция ifelse() в R
2.4. Цикл while в R
2.5. Цикл for в R
2.6. Цикл repeat в R
2.7. Операторы break и next в R
2.8. Функции в R
3. Структуры данных в R
3.1. Строки в R
3.2. Векторы в R
3.3. Матрицы в R
3.4. Cписок в R
#курсы_по_R
Самоучитель по R, который в данный момент находится в стадии разработки. На данный момент идёт работа над третьим разделом.
Содержание:
1. Вступление
1.1. Введение в язык программирования R
1.2. Интересные факты о языке программирования R
1.3. Язык R в сравнении с Python
1.4. Как установить RStudio в Windows и Linux?
1.5. Введение в RStudio
1.6. Создание и выполнение R-файла в RStudio
1.7. Комментарии в R
1.8. Переменные и константы в R
1.9. Типы данных в R
1.10. Функции вывода в R
1.11. Числа в R
2. Управление потоком выполнения программы в R
2.1. Операторы сравнения и логические операторы в R
2.2. Условные операторы if…else в R
2.3. Функция ifelse() в R
2.4. Цикл while в R
2.5. Цикл for в R
2.6. Цикл repeat в R
2.7. Операторы break и next в R
2.8. Функции в R
3. Структуры данных в R
3.1. Строки в R
3.2. Векторы в R
3.3. Матрицы в R
3.4. Cписок в R
#курсы_по_R
Опубликовал 5 урок курса "Разработка пакетов на языке R": Метаданные пакета, файл DESCRIPTION
Данный урок посвящён метаданным вашего пакета, и одному из наиболее главных его компонентов - файлу DESCRIPTION,
Тайм коды:
00:00 Вступление
00:39 Назначение и минимальный пример файла DESCRIPTION
01:53 Настройка дефолтных значений полей файла DESCRIPTION с помощью опции usethis.description
03:04 Поля Title и Description
04:09 Поле Authors@R для указания авторства пакета
06:03 Поля URL и BugReports
06:34 Поле License
09:24 Поля Imports и Suggests
12:30 Прочие поля файла DESCRIPTION
14:20 Использование пользовательских полей в файле DESCRIPTION
15:17 Заключение
————————————
В первом анонсе курса, я написал, что точного расписания публикации новых уроков нет, что буду их записывать и публиковать по мере появления времени, тем не менее вот уже 5 вторник подряд у меня получается выпускать новый урок, как минимум две следующие недели будет так же, надеюсь, что и далее каждый новый урок будет публиковаться каждую неделю по вторникам. С такими темпами полный курс будет опубликован в октябре.
Программа курса по прежнему расширяется и прорабатывается.
Ну и конечно, буду благодарен всем, кто поделится ссылкой на курс в своих соц сетях.
————————————
Ссылки:
1. Сайт курса
2. Видео на YouTube
3. Поддержать курс
#курсы_по_R
Данный урок посвящён метаданным вашего пакета, и одному из наиболее главных его компонентов - файлу DESCRIPTION,
Тайм коды:
00:00 Вступление
00:39 Назначение и минимальный пример файла DESCRIPTION
01:53 Настройка дефолтных значений полей файла DESCRIPTION с помощью опции usethis.description
03:04 Поля Title и Description
04:09 Поле Authors@R для указания авторства пакета
06:03 Поля URL и BugReports
06:34 Поле License
09:24 Поля Imports и Suggests
12:30 Прочие поля файла DESCRIPTION
14:20 Использование пользовательских полей в файле DESCRIPTION
15:17 Заключение
————————————
В первом анонсе курса, я написал, что точного расписания публикации новых уроков нет, что буду их записывать и публиковать по мере появления времени, тем не менее вот уже 5 вторник подряд у меня получается выпускать новый урок, как минимум две следующие недели будет так же, надеюсь, что и далее каждый новый урок будет публиковаться каждую неделю по вторникам. С такими темпами полный курс будет опубликован в октябре.
Программа курса по прежнему расширяется и прорабатывается.
Ну и конечно, буду благодарен всем, кто поделится ссылкой на курс в своих соц сетях.
————————————
Ссылки:
1. Сайт курса
2. Видео на YouTube
3. Поддержать курс
#курсы_по_R
YouTube
Разработка пакетов на R #5: Файл DESCRIPTION, метаданные пакета
В этом видео мы с вами подробно разберёмся с содержимым одного из главных файлов в вашем пакете - DESCRIPTION, в котором хранятся его метаданные.
|===========================================|
Тайм коды:
00:00 Вступление
00:39 Назначение и минимальный пример…
|===========================================|
Тайм коды:
00:00 Вступление
00:39 Назначение и минимальный пример…
Опубликован 6 урок курса "Разработка пакетов на R" - Управление зависимостями пакета
Вряд ли вы будете писать свой пакет на чистом R, используя исключительно его базовый функционал, наверняка вы в коде пакете так же будете использовать функции из других пакетов, а это значит ваш пакет будет иметь набор зависимостей от этих сторонних пакетов. В этом уроке мы разберём тему зависимостей пакетов.
Тайм коды:
00:00 Вступление
00:50 Преимущества и недостатки зависимостей
02:41 Анализ зависимостей пакетов
05:50 Какие компоненты пакета отвечают за его зависимости
07:37 Файл NAMESPACE
08:35 Рабочий процесс установки зависимостей
14:56 Когда стоит импортировать объекты из других пакетов
16:38 Как обращаться к функциям импортированным из других пакетов в коде, тестах и примерах вашего пакета, если поля указаны в поле Imports
18:04 Как обращаться к функциям импортированным из других пакетов в коде вашего пакета, если поля указаны в поле Suggest
21:34 Как обращаться к функциям импортированным из других пакетов в тестах вашего пакета, если поля указаны в поле Suggest
23:10 Как обращаться к функциям импортированным из других пакетов в виньетках и примерах к функциям вашего пакета, если поля указаны в поле Suggest
24:26 Как обращаться к функциям импортированным из других пакетов в коде, тестах и примерах вашего пакета, если поля указаны в поле Depends
26:05 Импорт и экспорт S3 методов
28:30 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
3. Поддержать курс
#курсы_по_R
Вряд ли вы будете писать свой пакет на чистом R, используя исключительно его базовый функционал, наверняка вы в коде пакете так же будете использовать функции из других пакетов, а это значит ваш пакет будет иметь набор зависимостей от этих сторонних пакетов. В этом уроке мы разберём тему зависимостей пакетов.
Тайм коды:
00:00 Вступление
00:50 Преимущества и недостатки зависимостей
02:41 Анализ зависимостей пакетов
05:50 Какие компоненты пакета отвечают за его зависимости
07:37 Файл NAMESPACE
08:35 Рабочий процесс установки зависимостей
14:56 Когда стоит импортировать объекты из других пакетов
16:38 Как обращаться к функциям импортированным из других пакетов в коде, тестах и примерах вашего пакета, если поля указаны в поле Imports
18:04 Как обращаться к функциям импортированным из других пакетов в коде вашего пакета, если поля указаны в поле Suggest
21:34 Как обращаться к функциям импортированным из других пакетов в тестах вашего пакета, если поля указаны в поле Suggest
23:10 Как обращаться к функциям импортированным из других пакетов в виньетках и примерах к функциям вашего пакета, если поля указаны в поле Suggest
24:26 Как обращаться к функциям импортированным из других пакетов в коде, тестах и примерах вашего пакета, если поля указаны в поле Depends
26:05 Импорт и экспорт S3 методов
28:30 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
3. Поддержать курс
#курсы_по_R
YouTube
Разработка пакетов на R #6: Управление зависимостями пакета, файл NAMESPACE
В этом уроке мы подробно разберёмся с управлением зависимостями вашего пакета. Подробно изучим файл NAMESPACE и его директивы.
|===========================================|
Тайм коды:
00:00 Вступление
00:50 Преимущества и недостатки зависимостей
02:41 Анализ…
|===========================================|
Тайм коды:
00:00 Вступление
00:50 Преимущества и недостатки зависимостей
02:41 Анализ…
Опубликован 7 урок курса по разработке пакетов на R: Разработка юнит-тестов к функциям вашего пакета
Вряд ли вы остановитесь на выпуске первой версии вашего пакета, скорее всего со временем вы будете улучшать и расширять его существующий функционал, а значит вносить в старый код изменения. Любые внесённые изменения могут сломать работающий ранее код, что бы избегать таких ситуаций вам и понадобятся юнит тесты, которые будут запускать и проверять работу всех функций вашего пакета, при любых внесённых изменениях.
Тайм коды:
00:00 Вступление
00:54 Неформальный процесс тестирования
03:10 Рабочий процесс тестирования
05:44 Настройка проекта пакета для тестирования
08:34 Как создать файл тестирования для функции
10:36 Как организованы файлы тестирования
15:16 Функции-ожидания, семейство expect_*()
20:07 Запуск тестов
23:41 Snapshot тесты
28:41 Управление Snapshot тестами
31:02 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
3. Поддержать курс можно тут или тут
#курсы_по_R
Вряд ли вы остановитесь на выпуске первой версии вашего пакета, скорее всего со временем вы будете улучшать и расширять его существующий функционал, а значит вносить в старый код изменения. Любые внесённые изменения могут сломать работающий ранее код, что бы избегать таких ситуаций вам и понадобятся юнит тесты, которые будут запускать и проверять работу всех функций вашего пакета, при любых внесённых изменениях.
Тайм коды:
00:00 Вступление
00:54 Неформальный процесс тестирования
03:10 Рабочий процесс тестирования
05:44 Настройка проекта пакета для тестирования
08:34 Как создать файл тестирования для функции
10:36 Как организованы файлы тестирования
15:16 Функции-ожидания, семейство expect_*()
20:07 Запуск тестов
23:41 Snapshot тесты
28:41 Управление Snapshot тестами
31:02 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
3. Поддержать курс можно тут или тут
#курсы_по_R
YouTube
Разработка пакетов на R #7: Написание юнит-тестов к функциям пакета
В этом видео мы разберёмся с тем, зачем покрывать код вашего пакета юнит-тестам, и как технически это реализовать.
|===========================================|
Тайм коды:
00:00 Вступление
00:54 Неформальный процесс тестирования
03:10 Рабочий процесс тестирования…
|===========================================|
Тайм коды:
00:00 Вступление
00:54 Неформальный процесс тестирования
03:10 Рабочий процесс тестирования…
Опубликован 8 урок курса по разработке пакетов на R - Документирование функций пакет
Этим уроком мы начинаем обширную тему документации вашего пакета. В этом видео мы разберёмся с тем, как добавить документацию к функциям пакета с помощью специальных комментариев и пакета
Тайм коды:
00:00 Вступление
00:43 Какие компоненты пакета отвечают за документацию функций
01:31 Рабочий процесс
04:47 Структура roxygen комментариев
05:34 Особенности разметки
07:10 Из каких разделов состоит документация к функциям пакета
09:06 Title, Description и Details
12:07 Документирование аргументов функции
14:55 Возвращаемое функцией значение
16:42 Примеры использования функции
20:12 Повторное использование документации
22:23 Документация уровня пакета
23:50 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
Этим уроком мы начинаем обширную тему документации вашего пакета. В этом видео мы разберёмся с тем, как добавить документацию к функциям пакета с помощью специальных комментариев и пакета
roxygen2
.Тайм коды:
00:00 Вступление
00:43 Какие компоненты пакета отвечают за документацию функций
01:31 Рабочий процесс
04:47 Структура roxygen комментариев
05:34 Особенности разметки
roxygen
комментариев07:10 Из каких разделов состоит документация к функциям пакета
09:06 Title, Description и Details
12:07 Документирование аргументов функции
14:55 Возвращаемое функцией значение
16:42 Примеры использования функции
20:12 Повторное использование документации
22:23 Документация уровня пакета
23:50 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #8: Документирование функций пакета
Этим уроком мы начинаем обширную тему документации вашего пакета. В этом видео мы разберёмся с тем, как добавить документацию к функциям пакета с помощью специальных комментариев и пакета roxygen2.
|===========================================|
Тайм коды:…
|===========================================|
Тайм коды:…
Опубликован 9 урок курса по разработке пакетов на R: Виньетки и прочая опциональная документация пакета
В этом уроке мы разберёмся с опциональной документацией уровня пакета:
* Виньетки - Статьи, подробно описывающие в свободной форме функционал пакета;
* README - Общее описание цели пакета и нескольких простых примеров его использования;
* NEWS - Файл в котором фиксируются все изменения вашего пакета.
Тайм коды:
00:00 Вступление
00:52 Что такое виньетки
01:45 Рабочий процесс создания виньеток
07:29 Метаданные виньетки
08:32 Разметка текста в Rmarkdown
14:24 Как добавить график в виньетку
16:19 Как добавить таблицу в виньетку
23:03 Опции чанков
28:01 Хранение исходников виньеток
28:47 Файл README
33:20 Файл NEWS
37:44 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
В этом уроке мы разберёмся с опциональной документацией уровня пакета:
* Виньетки - Статьи, подробно описывающие в свободной форме функционал пакета;
* README - Общее описание цели пакета и нескольких простых примеров его использования;
* NEWS - Файл в котором фиксируются все изменения вашего пакета.
Тайм коды:
00:00 Вступление
00:52 Что такое виньетки
01:45 Рабочий процесс создания виньеток
07:29 Метаданные виньетки
08:32 Разметка текста в Rmarkdown
14:24 Как добавить график в виньетку
16:19 Как добавить таблицу в виньетку
23:03 Опции чанков
28:01 Хранение исходников виньеток
28:47 Файл README
33:20 Файл NEWS
37:44 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #9: Опциональная документация уровня пакета - виньетки, READEM, NEWS
В этом уроке мы разберёмся с опциональной документацией уровня пакета:
* Виньетки - Статьи, подробно описывающие в свободной форме функционал пакета;
* README - Общее описание цели пакета и нескольких простых примеров его использования;
* NEWS - Файл в котором…
* Виньетки - Статьи, подробно описывающие в свободной форме функционал пакета;
* README - Общее описание цели пакета и нескольких простых примеров его использования;
* NEWS - Файл в котором…
Опубликован 10 урок курса по разработке пакетов на R: Разработка сайта пакета (пакет pkgdown)
К этому уроку мы уже изучили множество типов документации, которые можно добавить в ваш пакет, в этом уроке мы разберёмся с тем, как объединить всю разработанную ранее документацию и сформировать из неё сайт вашего пакета.
Тайм коды:
00:00 Вступление
01:13 Обзор рабочего процесса
02:41 Настройка пакет для разработки сайта
03:38 Запуск процесса создания сайта
04:09 Обзор разделов сайта пакета
05:21 Публикация сайта на GitHub, и настройка автоматической её пересборки при любом изменении пакета
06:40 Разница между виньеткой и статьёй сайта
07:42 Раздел reference, группировка и сортировка документации к функциям
11:01 Раздел articles, группировка и сортировка списка статей сайта
12:36 Управление навигационной панелью сайта
15:11 Управление боковой панелью сайта
17:50 Изменение темы сайта пакета
19:05 Разработка логотипа пакета
23:01 Как добавить счётчик Google Analytics на сайт пакета
23:51 Заключение
————————————
Не забывайте делиться ссылкой на курс у себя в соц. сетях, пока у него рекордно низкий охват, видео с трудом набирают пару десятков просмотров, а времени на создание курса ушло не мало, буду очень благодарен за репосты.
————————————
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
К этому уроку мы уже изучили множество типов документации, которые можно добавить в ваш пакет, в этом уроке мы разберёмся с тем, как объединить всю разработанную ранее документацию и сформировать из неё сайт вашего пакета.
Тайм коды:
00:00 Вступление
01:13 Обзор рабочего процесса
02:41 Настройка пакет для разработки сайта
03:38 Запуск процесса создания сайта
04:09 Обзор разделов сайта пакета
05:21 Публикация сайта на GitHub, и настройка автоматической её пересборки при любом изменении пакета
06:40 Разница между виньеткой и статьёй сайта
07:42 Раздел reference, группировка и сортировка документации к функциям
11:01 Раздел articles, группировка и сортировка списка статей сайта
12:36 Управление навигационной панелью сайта
15:11 Управление боковой панелью сайта
17:50 Изменение темы сайта пакета
19:05 Разработка логотипа пакета
23:01 Как добавить счётчик Google Analytics на сайт пакета
23:51 Заключение
————————————
Не забывайте делиться ссылкой на курс у себя в соц. сетях, пока у него рекордно низкий охват, видео с трудом набирают пару десятков просмотров, а времени на создание курса ушло не мало, буду очень благодарен за репосты.
————————————
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #10: Разработка сайта с документацией к пакету
К этому уроку мы уже изучили множество типов документации, которые можно добавить в ваш пакет, в этом уроке мы разберёмся с тем, как объединить всю разработанную ранее документацию и сформировать из неё сайт вашего пакета.
|===========================================|…
|===========================================|…
Опубликован 11ый урок курса по разработке пакетов на языке R: Публикация пакета в CRAN
За 10 предыдущих уроков мы подробно разобрали каждый этап процесса разработки собственного пакета, и наконец пришло время отправить пакет в основной репозиторий хранения R пакетов - CRAN. В этом уроке мы подробно разберём как подготовить свой пакет к публикации, и отправить его в CRAN.
Тайм коды:
00:00 Вступление
01:03 Настройка непрерывной интеграции для регулярной проверки вашего пакета на разных платформах с помощью GitHub Actions
03:43 Создаём issue со списком действий по подготовке и отправке новой версии пакета на CRAN
05:54 Действия при первой отправке пакета на CRAN
07:43 Проверка полей Title и Description файла DESCRIPTION
08:25 Дополнительные проверки и исправление ошибок
16:54 Отправка пакета на CRAN
21:27 Как проходит проверка вашего пакета на стороне CRAN
22:56 Что делать в случае отказа на публикацию пакета
24:27 Получаем письмо с результатами автопроверки CRAN
24:50 Сообщение о том, что ваш пакет успешно прошел проверку и будет опубликован в CRAN
25:14 Действия, которые необходимо выполнить после публикации пакета в CRAN
28:22 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
За 10 предыдущих уроков мы подробно разобрали каждый этап процесса разработки собственного пакета, и наконец пришло время отправить пакет в основной репозиторий хранения R пакетов - CRAN. В этом уроке мы подробно разберём как подготовить свой пакет к публикации, и отправить его в CRAN.
Тайм коды:
00:00 Вступление
01:03 Настройка непрерывной интеграции для регулярной проверки вашего пакета на разных платформах с помощью GitHub Actions
03:43 Создаём issue со списком действий по подготовке и отправке новой версии пакета на CRAN
05:54 Действия при первой отправке пакета на CRAN
07:43 Проверка полей Title и Description файла DESCRIPTION
08:25 Дополнительные проверки и исправление ошибок
16:54 Отправка пакета на CRAN
21:27 Как проходит проверка вашего пакета на стороне CRAN
22:56 Что делать в случае отказа на публикацию пакета
24:27 Получаем письмо с результатами автопроверки CRAN
24:50 Сообщение о том, что ваш пакет успешно прошел проверку и будет опубликован в CRAN
25:14 Действия, которые необходимо выполнить после публикации пакета в CRAN
28:22 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #11: Публикация пакета на CRAN
К этому моменту за 10 предыдущих уроков курса мы изучили все этапы процесса разработки собственного пакета, в этом уроке мы поговорим о том, как опубликовать ваш готовый пакет в основном репозитории хранения R пакетов - CRAN.
|==========================…
|==========================…
Опубликован 12 урок курса по разработке пакетов на языке R: Разработка пакета-обёртки над API
В этом уроке мы разберёмся с тем, что такое API, из каких компонентов состоят HTTP запросы и ответы. И в целом на нескольких примерах разберём функционал пакета httr2, и то, как с его помощью написать пакет-обёртку над API.
Тайм коды:
00:00 Вступление
00:45 Что такое API
01:49 Компоненты HTTP запросов и ответов
03:26 Введение в пакет httr2
08:04 Функции пакета httr2
09:36 Этапы работы с API
10:10 Простейший пример обёртки над Faker API
18:44 Управление конфиденциальными данными
29:33 Пример обёртки над NYTimes Books API
30:51 Обработка ошибок в HTTP ответах
34:06 Ограничение скорости отправки запросов
37:18 Как работать с API токена в пакетах-обёртках над API
39:32 Протокол OAuth
41:00 Пример обёртки над Facebook API
49:46 Обзор всего рабочего процесса
52:11 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
В этом уроке мы разберёмся с тем, что такое API, из каких компонентов состоят HTTP запросы и ответы. И в целом на нескольких примерах разберём функционал пакета httr2, и то, как с его помощью написать пакет-обёртку над API.
Тайм коды:
00:00 Вступление
00:45 Что такое API
01:49 Компоненты HTTP запросов и ответов
03:26 Введение в пакет httr2
08:04 Функции пакета httr2
09:36 Этапы работы с API
10:10 Простейший пример обёртки над Faker API
18:44 Управление конфиденциальными данными
29:33 Пример обёртки над NYTimes Books API
30:51 Обработка ошибок в HTTP ответах
34:06 Ограничение скорости отправки запросов
37:18 Как работать с API токена в пакетах-обёртках над API
39:32 Протокол OAuth
41:00 Пример обёртки над Facebook API
49:46 Обзор всего рабочего процесса
52:11 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #12: Разработка пакета-обёртки над API
В этом уроке мы разберёмся с тем, что такое API, из каких компонентов состоят HTTP запросы и ответы. И в целом на нескольких примерах разберём функционал пакета httr2, и то, как с его помощью написать пакет-обёртку над API.
|============================…
|============================…
Опубликован 13ый урок курса по разработке пакетов на языке R: Разработка пакета-обёртки над Google API
Этот урок является логическим продолжением темы, начатой в прошлом, но тут мы поговорим о ещё более частном случае, о том, как написать обёртку над любым Google API. Компания Google разработала сотни полезных сервисов, которыми пользуются миллионы людей по всему миру, большинство этих сервисов предоставляют API, и в этом уроке мы разберёмся как обёртывать эти API в пакет. В ходе урока мы разберёмся со специальным пакетом gargle, который очень упрощает разработку пакетов взаимодействующих с Google API.
Тайм коды:
00:00 Вступление
00:55 Создание учётных данных в Google Cloud
08:52 Функционал пакета gargle
09:50 Пример работы с пакетом gargle
17:08 Обзор рабочего процесса создания пакета обёртки над Google API
17:34 Интерфейс авторизации
26:08 Объект отвечающий за состояние авторизации в вашем пакете
27:38 Как обращаться к токену для подписи HTTP запросов
29:54 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
Этот урок является логическим продолжением темы, начатой в прошлом, но тут мы поговорим о ещё более частном случае, о том, как написать обёртку над любым Google API. Компания Google разработала сотни полезных сервисов, которыми пользуются миллионы людей по всему миру, большинство этих сервисов предоставляют API, и в этом уроке мы разберёмся как обёртывать эти API в пакет. В ходе урока мы разберёмся со специальным пакетом gargle, который очень упрощает разработку пакетов взаимодействующих с Google API.
Тайм коды:
00:00 Вступление
00:55 Создание учётных данных в Google Cloud
08:52 Функционал пакета gargle
09:50 Пример работы с пакетом gargle
17:08 Обзор рабочего процесса создания пакета обёртки над Google API
17:34 Интерфейс авторизации
26:08 Объект отвечающий за состояние авторизации в вашем пакете
27:38 Как обращаться к токену для подписи HTTP запросов
29:54 Заключение
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #13: Обёртка над Google API
Компания Google разработала сотни полезных сервисов, которыми пользуются миллионы людей по всему миру, большинство этих сервисов предоставляют API, и в этом уроке мы разберёмся как обёртывать эти API в пакет. В ходе урока мы разберёмся со специальным пакетом…
Опубликован 14ый, и завершающий урок курса по разработке пакетов на языке R: Создание мета-пакета
В заключительном уроке курса мы с вами научимся создавать собственные мета пакеты. Мета пакет это не самостоятельный пакет, а просто коллекция объединённых пакетов, одним из наиболее известных мета-пакетов является
Это самый короткий урок данного курса.
Тайм коды:
00:00 Вступление
01:10 Пример создания мета-пакета с помощью пакета
05:47 Аргументы функции
07:12 Заключение
————————————
Сегодня опубликован 14ый, и последний урок курса по разработке пакетов, работа над курсом продлилась ровно 3 месяца, 7 августа был опубликован 1ый урок, и сегодня - 7 ноября, последний.
Надеюсь курс поможет вам в написании своих собственных пакетов, если вы ранее ещё не имели такой практики, а тем кто уже активно пишет свои пакеты использовать наиболее продвинутые и современные техники в их разработке.
В ближайшие дни опубликую курс на bookdown, о чём тут отдельно сообщу.
————————————
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
В заключительном уроке курса мы с вами научимся создавать собственные мета пакеты. Мета пакет это не самостоятельный пакет, а просто коллекция объединённых пакетов, одним из наиболее известных мета-пакетов является
tidyverse
, в ядро которого входят такие пакеты как: dplyr
, tidyr
, ggplot2
, stringr
и т.д.Это самый короткий урок данного курса.
Тайм коды:
00:00 Вступление
01:10 Пример создания мета-пакета с помощью пакета
pkgverse
05:47 Аргументы функции
pkgverse()
07:12 Заключение
————————————
Сегодня опубликован 14ый, и последний урок курса по разработке пакетов, работа над курсом продлилась ровно 3 месяца, 7 августа был опубликован 1ый урок, и сегодня - 7 ноября, последний.
Надеюсь курс поможет вам в написании своих собственных пакетов, если вы ранее ещё не имели такой практики, а тем кто уже активно пишет свои пакеты использовать наиболее продвинутые и современные техники в их разработке.
В ближайшие дни опубликую курс на bookdown, о чём тут отдельно сообщу.
————————————
Ссылки:
1. Сайт курса
2. Видео на YouTube
#курсы_по_R
YouTube
Разработка пакетов на R #14: Создание мета пакета
В заключительном уроке мы с вами научимся создавать собственные мета пакета. Мета пакет это не самостоятельный пакет, а просто коллекция объединённых пакетов, одним из наиболее известных мета-пакетов является tidyverse, в ядро которого входят такие пакеты…
Курс "Разработка пакетов на языке R" опубликован на bookdown.org
В начале месяца я упоминал о завершении разработки последнего, 14-го урока курса и о планах опубликовать его на bookdown. Итак, рад сообщить, что курс теперь доступен на указанной платформе.
О курсе:
Что касается содержания курса, он был создан под впечатлением от книги Хедли Викхема и Дженни Брайан "R Packages (2e)". Мой опыт в разработке R-пакетов начался в 2016 году, и, как выяснилось, мои первые шаги были далеко не самыми эффективными. Книга Хедли предоставила современный и эффективный подход к разработке пакетов, что я внедрил в этот курс.
Курс объединяет мой семилетний опыт в создании пакетов с тем, что было представлено Викхемом и Брайан в их книге. У этих авторов есть чему поучиться.
Этот курс будет полезен как тем, кто только начинает свой путь в создании пакетов, так и тем, кто уже обладает опытом, поскольку в нем рассматриваются передовые практики в разработке пакетов. Так, что если вы не пробовали ещё себя в разработке пакета, то самое время попробовать.
Хотя некоторые теоретические главы книги были опущены, вместо них были добавлены уроки по созданию пакетов-обёрток над API с использованием
В целом, я считаю, что курс получился полезным, и надеюсь, что вы также оцените его.
Программа курса:
1. Обзор рабочего процесса разработки пакета
2. Настройка системы и интеграция с GitHub
3. Рекомендации по организации R кода
4. Добавление данных в пакет
5. DESCRIPTION - Метаданные пакета
6. NAMESPACE - Зависимости пакета
7. Разработка юнит-тестов к функциям пакета (пакет testthat)
8. Написание документации к функциям пакета
9. Виньетки и прочая опциональная документация пакета
10. Разработка сайта пакета (пакет pkgdown)
11. Публикация в CRAN
12. Разработка пакета обёртки над API (пакет httr2)
13. Разработка пакета обёртки для Google API (пакет gargle)
14. Как создать коллекцию пакетов
Буду признателен за репосты!
Ссылки:
- Курс на bookdown
- Сайт курса
- Плейлист на YouTube
- Благодарности автору
#курсы_по_R
В начале месяца я упоминал о завершении разработки последнего, 14-го урока курса и о планах опубликовать его на bookdown. Итак, рад сообщить, что курс теперь доступен на указанной платформе.
О курсе:
Что касается содержания курса, он был создан под впечатлением от книги Хедли Викхема и Дженни Брайан "R Packages (2e)". Мой опыт в разработке R-пакетов начался в 2016 году, и, как выяснилось, мои первые шаги были далеко не самыми эффективными. Книга Хедли предоставила современный и эффективный подход к разработке пакетов, что я внедрил в этот курс.
Курс объединяет мой семилетний опыт в создании пакетов с тем, что было представлено Викхемом и Брайан в их книге. У этих авторов есть чему поучиться.
Этот курс будет полезен как тем, кто только начинает свой путь в создании пакетов, так и тем, кто уже обладает опытом, поскольку в нем рассматриваются передовые практики в разработке пакетов. Так, что если вы не пробовали ещё себя в разработке пакета, то самое время попробовать.
Хотя некоторые теоретические главы книги были опущены, вместо них были добавлены уроки по созданию пакетов-обёрток над API с использованием
httr2
и gargle
.В целом, я считаю, что курс получился полезным, и надеюсь, что вы также оцените его.
Программа курса:
1. Обзор рабочего процесса разработки пакета
2. Настройка системы и интеграция с GitHub
3. Рекомендации по организации R кода
4. Добавление данных в пакет
5. DESCRIPTION - Метаданные пакета
6. NAMESPACE - Зависимости пакета
7. Разработка юнит-тестов к функциям пакета (пакет testthat)
8. Написание документации к функциям пакета
9. Виньетки и прочая опциональная документация пакета
10. Разработка сайта пакета (пакет pkgdown)
11. Публикация в CRAN
12. Разработка пакета обёртки над API (пакет httr2)
13. Разработка пакета обёртки для Google API (пакет gargle)
14. Как создать коллекцию пакетов
Буду признателен за репосты!
Ссылки:
- Курс на bookdown
- Сайт курса
- Плейлист на YouTube
- Благодарности автору
#курсы_по_R
YouTube
Разработка пакетов на R: Вводное слово
Несколько вводных слов о курсе "Разработка пакетов на R".
|===========================================|
Ссылка на курс: https://selesnow.github.io/r_package_course/
|===========================================|
Поддержать канал:
Вы можете поддержать канал…
|===========================================|
Ссылка на курс: https://selesnow.github.io/r_package_course/
|===========================================|
Поддержать канал:
Вы можете поддержать канал…