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

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

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

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

    ​​ОН КЛИНИК в поиске Middle Web analyst Курсы по программингу на Python или R будут плюсом. Задачи: ● Поддерживать сквозную аналитику по интернет-продажам услуг в разрезе источников и каналов привлечения, типов услуг, затрат на привлечение (онлайн- и оффлайн-воронки); ● разработка персонализированных отчетов для отдела маркетинга; ● построение Ad-Hoc отчётов; ● подготовка технических заданий для разработчиков и контроль их выполнения; ● багфикс/багрепорты по работе систем веб-аналитики; ● настройка тегов в Google Tag Manager; ● настройка целей, представлений в Google Analytics; ● анализ эффективности всех каналов трафика и подготовка предложений по оптимизации бюджетов и повышению уровня конверсии; ● аналитика поведения пользователей и предложения по оптимизации удобства использования и поведенческого опыта; ● разработка гипотез и проведение А/В-тестирований; ● контроль и поддержание единой логики использования UTM-меток; ● создание и поддержание актуальности отчетов маркетинговой аналитики на базе BI решений, которые позволят проводить аналитику всех каналов маркетинга с учетом реальных доходов от продаж услуг. Требования к кандидату: ● уверенный пользователь Google Analytics, Google Tag Manager; ● уверенное владение SQL, Python или R, Google BigQuery; ● опыт работы с API (настройка сбора данных и интеграции с внешними системами), контроль разработки и внедрения с командой программистов; ● знание систем визуализации данных Power BI, Google Data Studio; ● знание различных типов моделей атрибуции, опыт их внедрения, анализ результата и принятия решений по их эффективности; ● опыт работы с большими объемами данных. GEO- Украина. Детали вакансии в личных сообщениях: tg @lenaostras
  • R4marketing | канал Алексея Селезнёва | Язык R

    Видео урок "R Studio. Урок 3. Переходим на pipe" Автор: Иван Лабетов Описание: Мы продолжаем серию видео по R и Rstudio. В этот раз Иван Лабетов расскажет о функциях, покажет два способа последовательного выполнения функций и познакомит с оператором pipe из пакета magrittr. #видео_уроки_по_R
    R Studio. Урок 3. Переходим на pipe

    Мы продолжаем серию видео по R и Rstudio. В этот раз Иван Лабетов расскажет о функциях, покажет два способа последовательного выполнения функций и познакомит с оператором pipe из пакета magrittr.

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

    ​​Комментарии о действиях dplyr глаголов В интерактивном анализе данных полезно видеть, что именно произошло в результате выполнения какой либо манипуляции над данными. Пакет tidylog оборачивает глаголы пакетов dplyr и tidyr, таким образом, что они выводят в консоль дополнительную, полезную информацию по выполняемому преобразованию данных. Для начала подключите пакет tidylog после подключения dplyr/tidyr.
     
    library("dplyr")
    library("tidyr")
    library("tidylog", warn.conflicts = FALSE)
    Далее используете глаголы из dplyr/tidyr, но при этом в консоль будет выводиться дополнительная информация о каждой операции.
     
    filtered <- filter(mtcars, cyl == 4)
    #> filter: removed 21 rows (66%), 11 rows remaining
    mutated <- mutate(mtcars, new_var = wt ** 2)
    #> mutate: new variable 'new_var' (double) with 29 unique values and 0% NA
    Более полезным tidylog может быть при использовании конвейера:
     
    summary <- mtcars %>%
        select(mpg, cyl, hp, am) %>%
        filter(mpg > 15) %>%
        mutate(mpg_round = round(mpg)) %>%
        group_by(cyl, mpg_round, am) %>%
        tally() %>%
        filter(n >= 1)
    #> select: dropped 7 variables (disp, drat, wt, qsec, vs, …)
    #> filter: removed 6 rows (19%), 26 rows remaining
    #> mutate: new variable 'mpg_round' (double) with 15 unique values and 0% NA
    #> group_by: 3 grouping variables (cyl, mpg_round, am)
    #> tally: now 20 rows and 4 columns, 2 group variables remaining (cyl, mpg_round)
    #> filter (grouped): no rows removed
    В данном случае из выведенного лога мы видим, что последняя операция filter(n >= 1) на самом деле не произвела абсолютно никаких действий. Естественно в связи с тем, что tidylog является обёрткой над глаголами dplyr и tidyr, он имеет некоторые накладные расходы, т.е. функции с логированием выполняются немного дольше, особенно это чувствительно при использовании join_*() операций. Если вы хотите использовать обычный глагол (не обёртку), для какой то дорогостоящей операции, просто укажите это через двоеточия, например dplyr::left_join(). Ссылки: - Больше примеров кода доступны в README пакета tidylog - Сравнение скорости выполнения вычислений между чистым dplyr и tidylog #заметки_по_R
  • Реклама

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

    Видео урок "R Studio. Урок 2. Импорт базы данных" Автор: Иван Лабетов Описание: В этом видео Иван Лабетов покажет, как можно легко и быстро импортировать базу данных из формата Excel в Rstudio, используя экосистему пакетов tidyverse. Материалы: - скачать базу данных #видео_уроки_по_R
    R Studio. Урок 2. Импорт базы данных

    В этом видео Иван Лабетов покажет, как можно легко и быстро импортировать базу данных из формата Excel в Rstudio, используя экосистему пакетов tidyverse. А потренироваться вместе с нами вы сможете, скачав базу данных по ссылке: https://disk.yandex.ru/d/j2YBTbjLGLleEg ________________________________________________________________________ Вы сможете написать исследование от А до Я самостоятельно! Онлайн-курс "Сам себе статистик" Записаться: https://ebm-school.com/sam-statistic

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

    ​​Друзья, уже 2 года я читаю лекции в академии Web Promo Experts, в этом году ребята запустили новый курс "Веб аналитика Pro", в котором я веду два блока: 1. Язык R 2. Google BigQuery Уже 18 октября стартует второй поток, на который вы ещё успеваете записаться. ————————————————— Анонс: 18 жовтня, ми разом із WebPromoExperts запускаємо другий потік топового курсу — Веб-аналітика PRO🚀 Я буду брати участь у курсі в якості експерта. Тож буде дуууже багато практики, котра точно підвисить ваші професійні скіли до рівня PRO! ✅Ми адаптували матеріали програми до завдань веб-аналітика в нових реаліях сьогодення. Вас чекає багато насиченої та найактуальнішої інформації за такий короткий термін. Ми з колегами прагнемо передати всі наші знання та практичний досвід, щоб ви не витрачали на це багато років! 💻Формат: "живі" онлайн-вебінари і дуууже багато практики. 🗓Тривалість: 16 тижнів. Чому варто прийти на курс? 🔗 бо ви поглибите і систематизуєте свої знання в зборі, обробці та аналізі даних; 🔗бо ви збагатите свій досвід фішками і прийомами успішних практикуючих фахівців; 🔗бо ви застосуєте в своїй роботі API і мови програмування 🔗бо ви зробите апгрейд кар'єри і станете фахівцем рівня Pro всього за 4 місяці навчання! Тож я раджу не відкладати власний розвиток і кар'єрні перспективи в довгий ящик, Тим паче, що на курс зараз діє дуже вигідна пропозиція, його можна придбати за знижкою -30% та оплатити частинами. А записи лекцій будуть зберігатись у особистому кабінеті цілий рік, тож можна буде повертатись до матеріалів знов і знов. Записуйтесь на наш курс. Посилання лишаю тут: https://bit.ly/3dA5ul1
  • R4marketing | канал Алексея Селезнёва | Язык R

    Видео урок "R Studio. Урок 1. Создаем новый проект" Автор: Иван Лабетов Описание: В этом видео Иван Лабетов расскажет о том, как установить на свой компьютер R и Rstudio, как создать новый проект и подготовить его к последующему анализу. #видео_уроки_по_R
    R Studio. Урок 1. Создаем новый проект

    R - чрезвычайно мощный инструмент для анализа медицинских (и не только!) данных. В этом видео Иван Лабетов расскажет о том, как установить на свой компьютер R и Rstudio, как создать новый проект и подготовить его к последующему анализу. ________________________________________________________________________ Онлайн-курс "Сам себе статистик", где мы рассказываем о написании собственного исследования от А до Я - https://ebm-school.com/sam-statistic #rstudio #r #mdschool

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

    ​​Визуализируем в R данные мониторинга температуры процессора Raspberry PI Zero W Автор: Юрий Тукачев (@psych2016) Визуализируем данные мониторинга температуры Raspberry PI в R c помощью ggplot2 и отправляем в телеграм через телеграм-бота. Все R-скрипты выполняются на самом Raspberry PI Zero W c предварительно установленным R 4.2.1 и необходимыми пакетами. #статьи_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​А на какой стороне ты? Анализ смещения бросков относительно центра Автор: Владислав Шуфинский (@brains14482) Пример исследования на языке R. Из интересного в плане R там работа с пакетом gt, для визуализации таблиц, и графики исследования тоже созданы с помощью R. Ссылки: - Код исследования - Статья с исследованием #статьи_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Псевдонимы в magrittr Практически все пользователи R используют magrittr, пакет предоставляющий пайп оператор %>%. Но, большинство его пользователей знают этот единственный оператор. Более продвинутые пользователи знакомы и с несколькими другими пайп операторами, о которых я ранее уже рассказывал вот тут. Но, в magrittr присутвуют не только пайп операторы, но и псевдонимы многих базовых функций и операторов R, адаптированные под использование в конвейере. Список псевдонимов magrittr:
     
    extract - `[`
    extract2 - `[[`
    inset - `[<-`
    inset2 - `[[<-`
    use_series -`$`
    add - `+`
    subtract - `-`
    multiply_by - `*`
    raise_to_power - `^`
    multiply_by_matrix - `%*%`
    divide_by - `/`
    divide_by_int - `%/%`
    mod - `%%`
    is_in - `%in%`
    and - `&`
    or - `|`
    equals - `==`
    is_greater_than - `>`
    is_weakly_greater_than - `>=`
    is_less_than - `<`
    is_weakly_less_than - `<=`
    not (`n'est pas`) - `!`
    set_colnames -`colnames<-`
    set_rownames - `rownames<-`
    set_names - `names<-`
    set_class - `class<-`
    set_attributes - `attributes<-`
    set_attr - `attr<-`
    
    Несколько примеров использования приведённых выше псевдонимов, заимствованных из официальной справки:
     
     iris %>%
       extract(, 1:4) %>%
       head
    
    good.times <-
      Sys.Date() %>%
      as.POSIXct %>%
      seq(by = "15 mins", length.out = 100) %>%
      data.frame(timestamp = .)
    
    good.times$quarter <-
      good.times %>%
      use_series(timestamp) %>%
      format("%M") %>%
      as.numeric %>%
      divide_by_int(15) %>%
      add(1)
    Смотрите так же: - 4 пайплайна в magrittr #заметки_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Курс от Microsoft "Создание моделей машинного обучения с помощью языка R и tidymodels" Узнайте, как изучать и анализировать данные с помощью языка R. Познакомьтесь с моделями регрессии, моделями классификации и моделями кластеризации с помощью tidymodels и языка R. Содержание: ● Общие задачи по изучению и анализу данных. ● Использование ggplot2, dplyr, tidyr и других пакетов языка R для преобразования необработанных данных с целью получить понимание, аналитические сведения и знания. ● Когда следует использовать модели регрессии. ● Как обучать и оценивать модели регрессии с помощью платформы tidymodels. ● Когда следует использовать модели классификации. ● Как обучать и оценивать модели классификации с помощью платформы tidymodels. ● Когда следует использовать модели кластеризации. ● Как обучать и оценивать модели кластеризации с помощью платформы tidymodels. Предварительные требования: ● Базовые знания в области математики ● Некоторый опыт программирования на языке R #курсы_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    Как зарабатывать на аналитике данных выше рынка? Единственный верный способ — постоянно обновлять свои знания на предмет актуальности. А чтобы не распыляться на множество источников, подпишитесь на канал Data Study, где автор простым и доступным языком делится советами по оптимизации работы с базами данных, инструментами, облегчающими обработку информации. Рассказывает, какие hard и soft skills помогают получить вакансию мечты. • Методология DataOps и её востребованость в будущем. • Подборка Python библиотек для визуализации данных. • Подробный гайд по профессии аналитика. Компании нуждаются в специалистах по аналитике данных. Присоединяйтесь к data_study — без работы точно не останетесь!
    Аналитика данных / Data Study

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

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

    ​​Про графики UpSet Понимание взаимосвязей между атрибутами изучаемого набора данных является важной задачей анализа. Основной проблемой в этом контексте является комбинаторный взрыв числа пересечений множеств, если количество множеств превышает тривиальный порог. Наиболее распространенный подход к визуализации наборов – Диаграммы Венна - не масштабируется дальше трех или четырех наборов. Графики UpSet дают возможность проводить анализ взаимосвязей гораздо большего числа атрибутов. Содержание: 1. Когда использовать UpSet 2. Описание графиков UpSet 3. Комбинационная матрица 4. Реализация графиков UpSet 5. Используемые источники #статьи_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

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

    Работа с YouTube Analytics API с помощью пакета rytstat В этом видео мы продолжаем изучать работу с YouTube API с помощью языка R и пакета rytstat. На этот раз мы разберёмся с наиболее простым способом запроса статистики по эффективности вашего контента, который предоставляет YouTube Analytics API. YouTube Analytics API позволяет создавать настраиваемые отчеты, содержащие данные YouTube Analytic, указав нужные поля и фильтры. По смыслу очень схоже с Google Analytics Core Reporting API и данный API наиболее удобен для анализа эффективности вашего контента в интерактивном режиме. Тайм коды: 00:00 Введение 00:53 Назначение и структура YouTube Analytics API 02:05 Аргументы функции rytgetanalytics() 02:58 Типы отчётов доступные в YouTube Analytics API 03:35 Список доступных полей (параметров и показателей) в YouTube Analytics API 04:10 Работа со справкой YouTube Analytics API, сочетание полей отчёта 06:26 Запрос основной статистики с помощью пакета rytstat 07:57 Запрос основной статистики с разбивкой по днях 08:36 Как запросить из YouTube Analytics API статистику с разбивкой по датам и видео 13:35 построение рейтингов видео по просмотрам и лайкам 14:56 Визуализация рейтинга видео с помощью ggplot2 и построение динамики по просмотрам в разрезе дней на линейном графике 16:07 Учёт просмотров и других показателей по удалённым ресурсам 17:10 Пороговые значение при детализации отчётов 19:40 Как объединить в одном запросе фильтры по нескольким полям Смотрите также: - Авторизация в YouTube API #видео_уроки_по_R
    rytstat #3: Работа с YouTube Analytics API, запрос статистики по видео, плейлистам и рекламе

    В этом видео мы продолжаем изучать работу с YouTube API с помощью языка R и пакета rytstat. На этот раз мы разберёмся с наиболее простым способом запроса статистики по эффективности вашего контента, который предоставляет YouTube Analytics API. YouTube Analytics API позволяет создавать настраиваемые отчеты, содержащие данные YouTube Analytic, указав нужные поля и фильтры. По смыслу очень схоже с Google Analytics Core Reporting API. Этот API наиболее удобен для анализа данных по эффективности вашего контента в интерактивном режиме. |===========================================| Ссылки: Пример кода из видео: https://github.com/selesnow/publications/blob/master/code_example/youtube/3_youtube_analytics_API.R Документация к YouTube Analytics API, раздел с отчётами: https://developers.google.com/youtube/analytics/channel_reports |===========================================| Тайм коды: 00:00 Введение 00:53 Назначение и структура YouTube Analytics API 02:05 Аргументы функции ryt_get_analytics() 02:58 Типы отчётов доступные в YouTube Analytics API 03:35 Список доступных полей (параметров и показателей) в YouTube Analytics API 04:10 Работа со справкой YouTube Analytics API, сочетание полей отчёта 06:26 Запрос основной статистики с помощью пакета rytstat 07:57 Запрос основной статистики с разбивкой по днях 08:36 Как запросить из YouTube Analytics API статистику с разбивкой по датам и видео 13:35 построение рейтингов видео по просмотрам и лайкам 14:56 Визуализация рейтинга видео с помощью ggplot2 и построение динамики по просмотрам в разрезе дней на линейном графике 16:07 Учёт просмотров и других показателей по удалённым ресурсам 17:10 Пороговые значение при детализации отчётов 19:40 Как объединить в одном запросе фильтры по нескольким полям |===========================================| Поддержать канал: Вы можете поддержать канал любой произвольной суммой , собранные средства пойдут на закупку оборудования, которое поможет повысить качество контента. https://secure.wayforpay.com/payment/R4marketing |===========================================| Автор: Алексей Селезнёв Telegram канал: https://t.me/R4marketing

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

    ​​Десериализация php объектов с помощью R Сериализация объектов - сохранение объектов между сессиями, В PHP это строковое представление любого значения, которое может быть сохранено. Выглядит сериализованный на PHP объект примерно так: a:1:{s:17:\"last_cart_refresh\";i:1470188219;}. Чем то напоминает json, но распарсить на R такое представление объекта достаточно сложно. С проблемой десериализации php объектов на R я столкнулся, когда в таком виде объекты записывались в базу данных. А моей задачей было развернуть эти данные на R. Никаких встроенных механизмов на R реализующих десериализацию PHP объектов нет, так же нет и пакета, который это делал. Тогда я просто с помощью регулярного выражения вытянул нужные мне данные из сериализованных объектов, но как оказалось на Stackowerflow есть готовое решение. Функция представленная ниже написана на базовом R, она принимает строку, которой является сериализованый PHP объект, разворачивает его и возвращает матрицу:
     <- function(string){
    
      first <- unlist(strsplit(string, "\\{|\\}", fixed=F))
      inside_array <- unlist(strsplit(first[-1], ";", fixed=T))
      infomation_type <- substr(inside_array, 1,1)
    
      if(any(nchar(gsub("s|i", "", unique(infomation_type) )) != 0)){
        stop("unknow datatype in serilize data")
      }
      inside_array_s <- rep(NA, length(inside_array))
    
      pos <- infomation_type == "s"
      string_length <- as.numeric(sapply(strsplit(inside_array, ":", fixed=T), function(x) x[2]))[pos]
      inside_array_s[pos] <- substr(inside_array[pos], nchar(string_length)+4, nchar(inside_array[pos]))
    
      pos <- infomation_type == "i"
      inside_array_s[pos] <- substr(inside_array[pos],3,nchar(inside_array[pos]))
    
      # create key and value for each elment
      key <- inside_array_s[seq(1,length(inside_array_s),2)]
      value <- inside_array_s[seq(2,length(inside_array_s),2)]  
    
      return(cbind(key, value))
    }
    Результат:
     
    string <- 'a:1:{s:17:\"last_cart_refresh\";s:17:\"last_cart_refresh\";}'
    php_unserialize(string)
    
         key                     value                  
    [1,] "\"last_cart_refresh\"" "\"last_cart_refresh\""
    Там же есть более продвинутый вариант этой функции, который возвращает не матрицу, а список. Ссылки: - Ответ на Stackowerflof #заметки_по_R
  • Реклама

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

    ​​Приветственное сообщение от имени животного (пятничное) Пакет cowsay позволяет выводить в консоль фразы, или текущее системное время, от имени животного. Этот приём можно использовать для стартового сообщения при запуске пакета, либо для вывода финальной информации о работе скрипта в Rout, так же можно использовать его внутри Rmarkdown. Посмотреть список доступных животных можно извлекая имена списка animals.
     
    names(animals)
    
     [1] "cow"          "chicken"      "chuck"        "clippy"      
     [5] "poop"         "bigcat"       "ant"          "pumpkin"     
     [9] "ghost"        "spider"       "rabbit"       "pig"         
    [13] "snowman"      "frog"         "hypnotoad"    "shortcat"    
    [17] "longcat"      "fish"         "signbunny"    "facecat"     
    [21] "behindcat"    "stretchycat"  "anxiouscat"   "longtailcat" 
    [25] "cat"          "trilobite"    "shark"        "buffalo"     
    [29] "grumpycat"    "smallcat"     "yoda"         "mushroom"    
    [33] "endlesshorse" "bat"          "bat2"         "turkey"      
    [37] "monkey"       "daemon"       "egret"        "duckling"    
    [41] "duck"         "owl"          "squirrel"     "squirrel2" 
    Далее с помощью функции say(), вы можете указать фразу, и животное, которое её произнесёт:
     
    say('Subscribe to R4marketing', 'cat')
    
     -------------- 
    Subscribe to R4marketing 
     --------------
        \
          \
            \
                |\___/|
              ==) ^Y^ (==
                \  ^  /
                 )=*=(
                /     \
                |     |
               /| | | |\
               \| | |_|/\
          jgs  //_// ___/
                   \_)
    Аргументы функции say(): what - фраза ● by - кто её произнесёт ● type - тип сообщения, возможные значения: message, warning, print, string ● what_color - цвет фразы ● by_color - цвет, которым будет изображено животное #заметки_по_R
  • R4marketing | канал Алексея Селезнёва | Язык R

    ​​Видео урок "Преобразование excel файла для формата сводной с использованием R (pivot/unpivot)" Автор: Максим Рожков Описание: Как при помощи R сделать из формата представления данных, который неудобен для построения сводной таблицы, удобный формат. Смотрите также: - Курс "Язык R для пользователей Excel" #видео_уроки_по_R
  • R4marketing | канал Алексея Селезнёва | Язык 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