Обложка канала

R4marketing | канал Алексея Селезнёва | Язык R. Страница 11

Автор канала Алексей Селезнёв, руководитель отдела аналитики в Netpeak, автор R пакетов: ryandexdirect, rfacebookstat и др. В канале публикуются статьи, доклады, новости, заметки по языку R.

  • R4marketing | канал Алексея Селезнёва | Язык R

    Видео урок "Авторизация в YouTube API" Сегодня опубликовал первый видео урок по работе с пакетом rytstat, который позволяет работать с YouTube API. В ходе этого урока я подробно разобрал процесс авторизации, и рассказал какие API поддерживает YouTube. Тайм коды: 00:00 Введение 01:01 Какие API предоставляет YouTube 02:22 Какие способы авторизации предоставляет пакет rytstat 03:00 Авторизация с параметрами по умолчанию (встроенный OAuth клиент) 06:04 Функции управления авторизацией в rytstat 07:10 Настройка проекта в Google Cloud, для авторизации через собственный OAuth клиент 10:55 Авторизация через свой OAuth клиент 12:58 Работа с файлами кеша авторизационных данных 13:55 Переменные среды в rytstat 14:50 Заключение #видео_уроки_по_R
    rytstat #1: Авторизация в YouTube API на языке R

    Это первое видео из серии видео уроков по работе с YouTube API на языке R с помощью пакета rytstat. В данном видео мы подробно разберём процесс авторизации в API. |===========================================| Код используемый в видео: https://github.com/selesnow/publications/blob/master/code_example/youtube/1_auth.R |===========================================| Тайм коды: 00:00 Введение 01:01 Какие API предоставляет YouTube 02:22 Какие способы авторизации предоставляет пакет rytstat 03:00 Авторизация с параметрами по умолчанию (встроенный OAuth клиент) 06:04 Функции управления авторизацией в rytstat 07:10 Настройка проекта в Google Cloud, для авторизации через собственный OAuth клиент 10:55 Авторизация через свой OAuth клиент 12:58 Работа с файлами кеша авторизационных данных 13:55 Переменные среды в rytstat 14:50 Заключение |===========================================| Поддержать канал: Вы можете поддержать канал любой произвольной суммой , собранные средства пойдут на закупку оборудования, которое поможет повысить качество контента. https://secure.wayforpay.com/payment/R4marketing |===========================================| Автор: Алексей Селезнёв Telegram канал: https://t.me/R4marketing

    YouTube
  • R4marketing | канал Алексея Селезнёва | Язык R

  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Релиз rytstat 0.3.0 rytstat - пакет для работы со всеми YouTube API. О функционале и преимуществе перед другими существующими пакетами можно узнать тут. Что нового в версии rytstat 0.3.0: ● прежний аргумент fields переименован в part, т.к. он отвечал не за запрос отдельных полей, а за запрос групп полей, данный параметр в терминологии YouTube Data API называется part. ● во все функции для работы с YouTube Data API добавлен новый аргумент fields, который позволяет запрашивать отдельные поля из каждой указанной в аргументе part части. ● добавлена функция ryt_search(), которая позволяет искать в YouTube различные видео, плейлисты и каналы. Пример использования аргументов part и fields:
     
    library(rytstat)
    ryt_auth('[email protected]')
    videos_details <- ryt_get_video_details(
        video_id = videos$id_video_id,
        part = c('snippet', 'statistics'),
        fields = "items(id,snippet/channelId,snippet/title,statistics/viewCount)"
    )
    Синтаксис запроса полей в аргументе fields основан на синтаксисе xPath: ● Используйте список, разделенный запятыми (fields=a,b), чтобы выбрать несколько полей. ● Используйте звездочку (fields=*) в качестве подстановочного знака для обозначения всех полей. (по умолчанию) ● Используйте круглые скобки (fields=a(b,c)) для указания группы вложенных свойств, которые будут включены в ответ API. ● Используйте косую черту (fields=a/b), чтобы указать вложенное свойство. Несколько примеров: fields="items/id,playlistItems/snippet/title,playlistItems/snippet/position"fields="items(id,snippet/title,snippet/position)"fields="items(id,snippet(title,position))" Пример использования новой функции ryt_search():
     
    # поиск видео по запросу
    search_res_videos <- ryt_search(
      type            = 'video',
      q               = 'r language tutorial',
      published_after = '2022-03-01T00:00:00Z',
      published_before = '2022-06-01T00:00:00Z',
      max_results     = 10
    )
    
    # поиск плейлистов по запросу
    search_res_playlists <- ryt_search(
      type             = 'playlist',
      q                = 'r language tutorial',
      published_after  = '2022-03-01T00:00:00Z',
      published_before = '2022-06-01T00:00:00Z',
      max_results      = 50
    )
    
    # поиск каналов по запросу
    search_res_channels <- ryt_search(
    type             = 'channel',
    q                = 'r language tutorial',
    published_after  = '2022-03-01T00:00:00Z',
      published_before = '2022-06-01T00:00:00Z',
      max_results      = 50
    )
    В ближайшее время будет опубликована серия видео уроков по работе с YouTube API с помощью rytstat. Ссылки: - Сайт пакета rytstat #новости_и_релизы_R
  • Реклама

  • R4marketing | канал Алексея Селезнёва | Язык R

    Не бойся выбрать путь отличный от других!
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Предсказание оттока сотрудников на R Автор: Пономарев Павел-Рафаэль Задача: Решение задачи предсказания ухода сотрудников компании. Цель - выявить, какие факторы влияют на уход сотрудников из компании, а также предложить меры по увеличению лояльности сотрудников. Содержание: ● Данные и логика анализа ● Модель ● Симуляция ● Общие выводы #статьи_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    Data Study - канал с полезными и практическими материалами про аналитику данных, бизнес-анализ и развитие soft-навыков от ведущего BI аналитика. Материалы канала помогут улучшить профессиональные навыки в аналитике и Business Intelligence. 🎁 Большой бонус: бесплатный гайд по профессии аналитика данных, чтобы еще лучше погрузиться в специализацию аналитика Подписаться 👨‍💻
    Аналитика данных / Data Study

    Сайт: https://datastudy.ru/ По всем вопросам: @daniildzheparov Канал для всех кто увлекается аналитикой данных, data science, бизнес-анализом. Делюсь hard и soft навыками аналитиков, развиваю свои курсы и обучаю желающих получить ценные знания

    Telegram
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Быстрое создание статического одностраничного сайта с помощью R Пакет postcards позволяет вам создавать простой персональный одностраничный сайт с помощью Rmarkdown. На момент написания этого поста в пакет включены 5 готовых тем: Jolla, Jolla Blue, Trestles, Onofre, и Solana. Ниже пример создания создания шаблона с использованием одной из тем:
     
    postcards::create_postcard(template = "jolla")
    postcards::create_postcard(template = "jolla-blue")
    postcards::create_postcard(template = "trestles")
    postcards::create_postcard(template = "onofre")
    postcards::create_postcard(template = "solana")
    Далее пример создания самой странички, результат показан на изображении к посту.
     
    ---
    title: "Xiang Guo"
    image: "xiang.jpg"
    links:
      - label: LinkedIn
        url: "https://linkedin.com/"
      - label: Twitter
        url: "https://twitter.com/"
      - label: GitHub
        url: "https://github.com/"
      - label: Email
        url: "mailto:[email protected]"
    output:
      postcards::jolla_blue
    ---
     
    Raised in New Jersey by two lawyers, I am now an aspiring data artist and 
    competitive rock climber. I moved to Seattle to fly floatplanes, but I got 
    caught up in the startup world. Send me a WhatsApp message if you have good 
    turnip prices.
    Ссылки: - примеры кода брал из README пакета, там же есть примеры каждой из доступных тем. #заметки_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Оборачиваем API с помощью httr2 Ранее я уже неоднократно рассказывал о пакете httr2, потомке httr. Данный пакет позволяет вам взаимодействовать с различными API через HTTP запросы. Сегодня я опубликовал перевод второй официальной виньетки к нему "Wrapping APIs". Данная виньетка раскрывает все нововведения httr2, из статьи вы узнаете: ● Как обрабатывать ошибочные HTTP запросы, конвертирую их в ошибки R; ● Как управлять скоростью отправки HTTP запросов; ● Как использоваться встроенные потоки авторизации. ● Как управлять кешированием учётных данных. Статья по сути пошагово объяснят как разработать пакет - обёртку над любым API на практических примера разбора следующих API: ● Faker API ● NYTimes Books API ● Github Gists API Смотрите так же: - Работа с API на языке R, введение в пакет httr2 #статьи_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Трюки ggplot2 - легенда Автор: Кибальников Дмитрий (@Kb_Dm) Описание: Я хотел бы собрать серию заметок, которая раскрывает некоторые аспекты создания визуализации с помощью ggplot2. В основном я буду разбирать частые вопросы, которые возникают у новых пользователей, но ответы на которые могут быть найдены только на StackOverflow или на подобных тому ресурсах. Буду стараться по шагам пояснять, что и зачем происходит, иногда немного отходя от основной линии. Первая область, которую я хотел бы разобрать – это легенда – такая штука, которая поясняет какой график чему соответствует. В силу того, что фокус моих интересов пролегает в области финансового анализа в качестве рабочих данных буду использовать достаточно заурядные котировки четырех технологических гигантов: Apple, Microsoft, Google, Tesla Содержание: ● StoryTelling ● Подготовка ● Паттерн ● Антипаттерн ● Все вместе ● Итоги #статьи_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Друзья, в канале уже более 4000 подписчиков, наверняка среди вас много тех, кому есть чем поделиться с сообществом. Если вы являетесь авторами статей, видео уроков по языку R, или просто хотите поделиться какими то своими наработками в виде небольшой заметки, то присылайте всё это мне в личку (@AlexeySeleznev), а я в свою очередь буду делаться в канале с указанием авторства. Главное условие, материал должен быть связан с применением языка R.
  • R4marketing | канал Алексея Селезнёва | Язык R

    Материалы по Data Science: книги, лекции, статьи🚀 Присоединяйся — https://t.me/ds_notes
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Видео урок и практическое занятие по работе с пакетом raster Автор: Артём Голубничий Растры – это цифровые аэрофотоснимки, спутниковые снимки, цифровые фотографии и даже сканированные бумажные карты. Из данного урока вы узнаете о том, что такое растровые данные, и как с ними работать в R. Ссылки: - теоретическое занятие - практическое занятие #видео_уроки_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Как удалить emoji из текста? Описание проблемы: Периодически, например при запросе статистики по рекламным кампаниям, или тем более объявлениям, в их названиях вам могу попадаться разные emoji. Вот пример реального названия РК которая попался мне в выгрузке:"📈_Pis_mo_dlja_uchastnika_KEY_Conference_22.10_📈". Проблема может возникнуть, например, при попытке записать текст с emoji в базу данных. Решение: Удалить emoji из текста можно с помощью регулярного выражения [^\x01-\x7F]. Пример:
     
    Texts = c("Let the stormy clouds chase, everyone from the place ☁️  ♪ ♬",
        "See you soon brother ☮️ ",
        "A boring old-fashioned message" ) 
    
    gsub("[^\x01-\x7F]", "", Texts)
    [1] "Let the stormy clouds chase, everyone from the place    "
    [2] "See you soon brother  "                                  
    [3] "A boring old-fashioned message"
    
    
    Ссылки: - подсмотрено на stackoverflow в теме "remove emoticons in R using tm package" #заметки_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    Ищем IT специалистов 🚀 Для вас специально был создан годный канал, где публикуются только вручную отобранные вакансии в сфере it. Вам больше не придётся сёрфить по непонятным сайтам, форумам и биржам в поисках достойных заказов. Средняя зарплата на канале - 4000$ Ждём вас: @jobfordevs
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Неравный join Автор: Илья Шутов (@iMissile) Задача объединения табличных представлений очень часто встречается как в аналитике, так и в разработке (БД). Существует несколько различных типов слияний, фактически, это операции над множествами. Не будем погружаться в детали, на эту тему написано множество книг, семинаров, публикаций. Посмотрим на эти механизмы в преломлении практических задач. Будем смотреть по нарастающей сложности и пытаться решить их на «офисном» ноутбуке, не привлекая бесконечные мощности больших данных или реляционные БД. Содержание: ● Задача 1. Корабли и рыбы ● Задача 2. Дома и магазины ● Задача 3. Ищем e-mail ботов ● Задача 4. Поиск похожих документов #статьи_по_R
  • Реклама

  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Упрощенная манипуляция списками в R с помощью пакета listr Пакет listr вошел в топ 40 опубликованных на CRAN пакетов в апреле 2022 года. Основной целью пакета является упрощение простых операций по манипуляции списками, сделать синтаксис этих операций легко читаемым и дружественным к пайпам. Функции listr: list_append() - Добавить элемент в конец списка ● list_bind() - Объединить элементы списка, и позволяет указать те элементы, которые необходимо извлечь после объединения ● ist_bind_all() - Объединить элементы списка, и извлекает все элементы после объединения ● list_extract() - Извлечение элементов списка ● list_flatten() - Выравнивание вложенных уровней списка ● list_insert() - Добавить элемент в список, на указанную позицию ● list_is_compatible_class() - Проверяет принадлежность всех элементов вектора одному классу, данная функция считает совместимые классы (например data.frame, tibble, data.table) за один класс. ● list_is_same_class() - Проверяет принадлежность всех элементов вектора одному классу, данная функция считает совместимые классы (например data.frame, tibble, data.table) как разные классы. ● list_join_df() - Объединить фреймы, которые являются элементами списка по ключу, "сджойнить" ● list_name_to_df() - Добавляет имена элементов в виде дополнительного стобца фрейма, функция используется только со списом состоящим из фреймов. ● list_prepend() - Добавить элемент в начало списка ● list_remove() - Удалить элемент списка ● list_rename() - Переименовать элементы именованного списка ● list_select() - Выбор отдельных частей списка Пример:
     
    library(listr)
    
    # тестовые данные
    by_cyl <- split(mtcars, mtcars$cyl)
    
    # переименовываем элементы списка
    by_cyl <- by_cyl |> 
      list_rename("cyl4" = `4`, "cyl6" = `6`, "cyl8" = `8`)
    
    # выбор элементов списка
    by_cyl |> list_select(1, 2)
    cyl4 <- by_cyl |> list_extract(cyl4)
    
    # удаляем элемент списка
    by_cyl <- by_cyl |> list_remove(cyl4)
    
    # добавляем элемент списка
    by_cyl <- by_cyl |> list_prepend(cyl4, name = "cyl4")
    
    # объединяем таблицы в списке
    by_cyl |> 
      list_bind(cyl4, cyl6, what = "rows", name = "cyl4_and_6")
    
    # объединяем таблицы по ключу
    dfl <- list(
      data.frame(idx = sample(100, 30), x = rnorm(30)),
      data.frame(idx = sample(100, 30), y = rnorm(30)),
      data.frame(idx = sample(100, 30), z = rnorm(30))
      )
    
    list_join_df(dfl, join_type = 'inner', by = 'idx')
    
    # Проверяем принадлежат ли отдельные элементы списка одному классу
    dfl <- list(
      tibble::tibble(idx = 21:40, y = rnorm(20)),
      data.frame(idx = 21:40, y = rnorm(20)),
      data.frame(idx = 41:60, y = rnorm(20))
      )
    
    list_is_same_class(dfl)
    list_is_compatible_class(dfl)
    Для операций со списками есть и более функциональный пакет - `rlist`, но в рамках одного поста в канале рассказать о нём сложно, поэтому о нём я либо запишу видео урок, либо статью. Ссылки: - Большая часть примеров кода взяты из виньетки "An Introduction to listr" #заметки_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    4000 подписчиков Друзья, на этой неделе канал перешагнул новый рубеж в 4000 подписчиков, спасибо вам, двигаемся дальше! 💵поддержать канал
  • R4marketing | канал Алексея Селезнёва | Язык R

    Отличная анимация, объясняющая суть пайплайнов в R. Папйлан похож на процесс выпечки: 1. Берём продукты 2. Миксуем их 3. Выпекаем 4. Украшаем 5. Нарезаем Подаём. Без пайпов это выглядело бы так: slice(decorate(bake(mix(products)))) За анимацию отдельное спасибо @psych2016

    1655187260685.gif

    image/gif