Как использовать Rscript в качестве источника данных в Microsoft Power BI на примере Яндекс.Метрики

Интерес к инструменту визуализации Microsoft Power BI неумолимо растёт.
Основная проблема, с которой может столкнуться начинающий пользователь Power BI — это получение данных из API рекламных и аналитических систем.

Однако есть решение — использовать в качестве коннектора язык R и готовые пакеты (расширения), которые позволяют подключиться к необходимым источникам.

Месяц назад Алексей Селезнёв (я бы назвал его евангелистом языка R среди рекламных агентств), выпустил свой новый пакет для работы с Яндекс.Метрикой. Именно на примере этого пакета мы и будем рассматривать загрузку данных из Метрики в Power BI.

1. Установите язык R и необходимые пакеты функций

1.1. Скачайте и установите актуальную версию R, а также интегрированную среду разработки R Studio, в которой вам будет удобнее работать.

1.2. В R Studio откройте все доступные панели с помощью сочетания клавиш Ctrl+Alt+Shift+0. В область Source вставьте код.

install.packages("rym")

Для запуска установки пакета выделите код с помощью мыши и запустите его нажатием  Ctrl+Enter.

2. Подготовьте папку для токенов

При подключении к Яндекс.Метрике происходит запрос авторизации и в текущей рабочей папке ищется файл для авторизации, если его нет — происходит запрос к сервису авторизации Яндекса и в случае успеха создаётся файл с токеном.

Если ваша рабочая папка будет всегда меняться, то файл будет создаваться снова и снова.
Чтобы не плодить одинаковые файлы на компьютере, предлагаем заранее определить папку, куда будут сохраняться ваши токены, например «C:\Tokens\rym»

# Задаём адрес директории (папки) для токенов
path <- "C:/Tokens/rym"

# Создаём директорию
dir.create(path, recursive=TRUE)

# Устанавливаем рабочую директорию
setwd(path)

При необходимости измените адрес директории.
Для создания директории и применении её в качестве рабочей выделите код с помощью мыши и запустите его нажатием  Ctrl+Enter.

После применения команды в окне Environment появится новая переменная.
Чтобы убедиться, что рабочая директория установлена, нажмите в окне Files на кнопку «More» > «Go To Working Directory».
В адресе должна отобразиться указанная вами в коде директория.

3. Получите токен доступа к API Яндекс.Метрика

3.1. Для получения токена доступа к API Метрики воспользуйтесь кодом:

library(rym)
rym_auth(login = "Ваш логин")

Поле login необязательно, однако если вам необходимо получать статистику с разных логинов, используйте данный параметр.
Для запуска также необходимо вставить код в область «Source» в RStudio, выделить с помощью мыши и запустить сочетанием клавиш Ctrl+Enter.

3.2. В открывшемся окне браузера предоставьте пакету «RYM» доступ к данным — нажмите кнопку «Разрешить».

3.3. После этого откроется страница с кодом для получения доступа к API, скопируйте его.

3.3. Полученный код необходимо вставить в консоль RStudio, нажать Enter и согласиться на предложение сохранить файл токена на диск.

 

3.4. Теперь токен сохранён в указанной папке и будет доступен при будущих обращениях.

4. Загрузите данные в Microsoft Power BI

Предисловие

Для загрузки данных необходимо сформировать запрос к API Яндекс.Метрики.
Далее мы рассмотрим лишь один из вариантов запросов к API, об остальных вы можете прочитать в официальной документации по ссылке или можете открыть справку по пакету прямо в RStudio.

Для второго варианта вам необходимо перейти на вкладку Packages, найти пакет rym и открыть его:

В открывшемся окне вы увидите список команд, которые присутствуют в данном пакете.

4.1. Откройте Power BI, нажмите «Получить данные» и выберите коннектор R-скрипт.

4.2 В диалоговое окно R sctipt вставьте следующий код:

# Подключаем пакет
library(rym)

# Устанавливаем директорию с токеном в качестве рабочей
setwd("C:/Tokens/rym")


#Получаем статистику
stats <- rym_get_data(counters   = "ваш счётчик(и)",
                      date.from  = "2018-10-01",
                      date.to    = "yesterday",
                      dimensions = "ym:s:date,ym:s:lastTrafficSource",
                      metrics    = "ym:s:visits,ym:s:pageviews,ym:s:users",
                      login = "AgentsRBS",
                      token.path = getwd())

В код подставьте ваш номер счётчика или счётчиков (через запятую). Значения необходимо указывать в кавычках.
В данном примере дата указана с 01 октября по вчерашний день, при необходимости вы можете её изменить.4.3 Нажмите «ОК», и начнется процесс загрузки данных.

4.4 В результате обработки запроса в Power BI будет загружена таблица stats, которую вы можете сразу загрузить или сначала предобработать.

Выводы

Вы можете использовать готовые пакеты R для получения данных сразу в Power BI для объединения с вашими данными и создания дашбордов на их основе.

  1. Установите актуальную версию языка R и R Studio. Инсталлируйте необходимый пакет, в нашем случае rym.
  2. Получите токен доступа и сохраните его.
  3. Загрузите данные в Power BI.
  4. Анализируйте!

Если у вас возникнут трудности — пишите в комментарии. и я постараюсь вам помочь.

Оцените статью

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (6 оценок, среднее: 4,33 из 5)
Загрузка...

Поделитесь в соцсетях

Похожие публикации

Регулярные выражения + JS событие. Очередное обновление от Яндекс.Метрики

Яндекс.Метрика выкатила очередное обновление. Наконец-то возликуют те, кто не любит плодить по 100500 целей в интерфейсе! Теперь появилась возможность объединить js-события в одну цель, избегая настройки через составную цель. Ведь раньше приходилось задавать каждую цель через условие «или». Конечно, можно предварительно объединить все события в одном теге через GTM… Но что, если события для Метрики прописаны напрямую в коде сайта или частично настроены […]

Аффинити-индекс в Яндекс.Метрике: как использовать этот показатель при настройке рекламных кампаний

Сегодня поговорим про показатель аффинити-индекс в Яндекс.Метрике и о том, как информацию, полученную в этом отчете, можно использовать в рекламных кампаниях. Найти этот показатель вы можете в любом счетчике Яндекс.Метрики в разделе «Долгосрочные интересы». Данные агрегируются на основании посетителей сайта. Аффинити-индекс – это отношение доли посетителей с заданным интересом на вашем сайте к среднестатистической доле […]

Экспорт оффлайн-конверсий в Я.Метрику. Зачем это и как?

Чтобы оценивать эффективность разных каналов, в Яндекс.Метрике настраивают отслеживание целей и внедряют передачу данных электронной коммерции. Но эти способы подразумевают регистрацию лида, который может не закрыться в сделку.  Чтобы передать данные о совершенной сделке, можно: использовать загрузку оффлайн-конверсий; передавать данные из оффлайн-магазина.  Это два потенциальных сценария, которые могут быть применены на практике, с целью как […]