Блог про интернет-маркетинг для бизнеса

Аналитика

Как связать Яндекс.Директ с Microsoft Power BI

261
64

Яндекс.Директ собирает много данных, но, к сожалению, в веб-интерфейсе доступно очень мало информации для анализа. В этой статье я подробно опишу, как получить статистику о рекламных кампаниях c помощью языка R для визуализации в Power BI.

Microsoft Power BI — один из лидеров BI-индустрии. Бесплатной базовой версии вполне достаточно для решения большинства задач, благодаря этому инструмент довольно быстро стал очень популярным среди аналитиков и маркетологов.

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

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

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

if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")}
library(devtools)
install_github('selesnow/ryandexdirect')

Чтобы запустить процесс установки пакетов, выделите код с помощью мыши и запустите его нажатием Ctrl+Enter.

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

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

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

library(ryandexdirect)
ya_token <- ya_token <- yadirGetToken()

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

2.2. В открывшемся окне браузера предоставьте пакету «ryandexdirect» доступ к данным — нажмите кнопку «Разрешить». После этого откроется страница со сгенерированным токеном доступа к API.

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

Токен доступа еще понадобится, поэтому скопируйте его в любой текстовый документ и смело можете закрывать R Studio.

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

Чтобы обрабатывать данные из Яндекс.Директ в Power BI, необходимо настроить импорт. Рассмотрим два способа настройки: с помощью сценария на языке R и готового документа Power BI .

3.1. С помощью сценария на языке R

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

В диалоговое окно «Выполнить сценарий R» вставьте следующий код:

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

#Получаем список кампаний
campList <- yadirGetCampaignList(logins = "<ВАШ ЛОГИН НА ЯНДЕКСЕ>", token = "<ВАШ ТОКЕН В ВИДЕ СТОКИ>")

#Получаем статистику по кампаниям
Stat <- yadirGetSummaryStat(campaignIDS = campList$Id,
                           dateStart = Sys.Date() - 90,
                           dateEnd = Sys.Date(),
                           token = "<ВАШ ТОКЕН В ВИДЕ СТОКИ>")

В код подставьте ваш логин Яндекс.Директ и токен доступа к API, полученный на втором шаге. Значения необходимо в кавычках.

С помощью сценария на языке R

3.1.2. Нажмите «ОК», и начнется процесс загрузки данных.

начнется процесс загрузки данных

В результате получите в Power BI две таблицы:

  • campList — со списком рекламных кампаний;
  • Stat — со статистикой по кампаниям.

Все денежные данные будут возвращены в условных единицах Яндекса. Текущий курс всегда можете найти в справке.

денежные данные будут возвращены в условных единицах

3.1.3. Связь между таблицами можете настроить непосредственно в Power BI по полям Id из таблицы campList и CampaignID из таблицы Stat.

По полям Id из таблицы campList

3.2. С помощью файла Power BI с коннектором к Яндекс.Директ

Второй способ более простой, потому что я уже создал документ Power BI и настроил отправку запроса к Яндекс.Директ через пользовательские параметры.

3.2.1. Скачайте файл с коннектором. В интерфейсе Power BI откройте выпадающее меню «Изменить запросы» и выберите команду «Изменить параметры».

выбираем команду «Изменить параметры»

3.2.2. Введите свой логин в Яндексе и API-токен, полученный на втором шаге. Нажмите «ОК».

Введите полученный логин

Выводы

На основе данных, импортированных из Яндекс.Директ в Microsoft Power BI, вы сможете создавать понятные отчеты и обновлять их в режиме реального времени. Подытожим основные шаги: 

  1. Установите актуальную версию языка R и R Studio. Инсталлируйте пакет «devtools» и «ryandexdirect».
  2. Получите токен доступа к API Яндекс.Директ и сохраните его.
  3. Загрузите данные в Power BI: 
    • с помощью сценария на языке R;
    • с помощью документа Power BI с коннектором к Яндекс.Директ.

На этом все. Если у вас что-либо не получится — пишите комментарии, постараюсь помочь.

Обнаружили ошибку? Выделите ее и нажмите Ctrl + Enter.

Комментарии (115)

  1. 0
    24 дня назад

    Выдает ошибку UNABLE TO CONNECT


    Details: "ADO.NET: R script error.


    ---------------------

    Welcome to ryandexdirect version 2.5.1


    Author:   Alexey Seleznev (Head of analytics dept at Netpeak).

    Email:    selesnow@gmail.com

    Blog:     https://alexeyseleznev.wordpress.com

    Facebook: https://facebook.com/selesnown

    Linkedin: https://www.linkedin.com/in/selesnow


    Type ?ryandexdirect for the main documentation.

    The github page is: https://github.com/selesnow/ryandexdirect/


    Suggestions and bug-reports can be submitted at: https://github.com/selesnow/ryandexdirect/issues

    Or contact: <selesnow@gmail.com>


        To suppress this message use:  suppressPackageStartupMessages(library(ryandexdirect))

    ---------------------


    Ошибка в yadirGetCampaignList(logins = "login", token = "AQAAAAAjvfw********") :

      неиспользованные аргументы (logins = "login", token = "AQAAAAAjvfw********") ")

    Выполнение остановлено

    "


    КОД ВЫГЛЯДИТ ТАК:

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

    #Получаем список кампаний
    campList <- yadirGetCampaignList(logins = "login", token = "AQAAAAAjvfw********")

    #Получаем статистику по кампаниям
    Stat <- yadirGetSummaryStat(campaignIDS = campList$Id,
                               dateStart = Sys.Date() - 90,
                               dateEnd = Sys.Date(),
                               token = "AQAAAAAjvfw********")

    Алексей, пожалуйста, подскаите, что делать?!

  2. 0
    месяц назад

    Друзья, привет. Кто работал с коннектором для сбора данных с Яндекс Директа в POWER BI - помогите мне решить задачу: я хочу настроить автоматическое обновление отчетов, но почему-то когда я в сервисе POWER BI пытаюсь менять настройки credentials, такая ошибка выскакивает: http://joxi.ru/52akyV5U4jBaKr

    Что можно сделать, чтобы добитая автоматического обновления?

  3. 0
    месяц назад

    Алексей, добрый день!


    При установке выдаёт ошибку:


    Downloading GitHub repo selesnow/ryandexdirect@master

    from URL https://api.github.com/repos/selesnow/ryandexdirect/zipball/master

    Installing ryandexdirect

    '/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file \

      --no-environ --no-save --no-restore --quiet CMD INSTALL \

      '/private/var/folders/3c/pkhbbfjx5_50rcpj0fhbg_hh0000gp/T/RtmpBKA242/devtools18b17afd264/selesnow-ryandexdirect-44a6d54' \

      --library='/Users/nadezhdapirogova/Library/R/3.4/library' \

      --install-tests 


    * installing *source* package ‘ryandexdirect’ ...

    ** R

    Error in parse(outFile) : 

      неправильный многобайтный символ при обработке на строке 163

    ERROR: unable to collate and parse R files for package ‘ryandexdirect’

    * removing ‘/Users/nadezhdapirogova/Library/R/3.4/library/ryandexdirect’

    Installation failed: Command failed (1)


    Как поправить? Спасибо.

  4. 0
    2 месяца назад
    Добрый день. Подскажите, что нужно сделать, чтобы данные из Яндекса автоматически обновлялись в Power Bi Service.
    • 0
      Вячеслав Кокорин
      2 месяца назад

      Добрый день, это можно настроить через шлюз (gateway).

      Что вам для этого понадобится:

      1. Power BI Pro версия.

      2. Сервер, ноутбук или ПК который всегда будет включён.

      3. Скачать и установить шлюз (https://powerbi.microsoft.com/ru-ru/gateway/)


      Что надо сделать:

      1. Разработать десктопный pbix файл.

      2. Опубликовать разработанный на первом шаге файл в Power BI Service.

      3. Настроить расписание обновление в Power BI Service, весь процесс настройки подробно описан тут. (https://docs.microsoft.com/ru-ru/power-bi/personal-gateway).

      4. ПК на котором установлен шлюз всега должен быть включён.


      Но в любом случае я рекомендую с API Яндекс Директа, и с любым другим апи работать по другой схеме.

      1. Ежедневно забираем из API данные за вчера.

      2. Собранные данные записываем в нашу базу данных.

      3. Power BI подключаем не напрямую к API, а к нашей базе данных.



  5. 0
    2 месяца назад

    Алексей, здравствуйте.

    Подскажите, есть ли возможность выгружать из "Директа" ключевые слова с их СPC (интересно отслеживать стоимость каждого касания) за любой период?

    Использовал функцию yadirGetKeyWords, ну она ограничена периодом в 28 дней.


    Спасибо.

    • 0
      Денис Кулешов
      2 месяца назад

      Добрый день, если вам просто нужен список ключевых слов с CPC можете воспольховаться функцией yadirGetReport:

      Пример кода:

      stat <- yadirGetReport(ReportType = "CAMPAIGN_PERFORMANCE_REPORT",

                                             DateRangeType = "CUSTOM_DATE",

                                             DateFrom = sopm,

                                             DateTo = eopm,

                                             FieldNames = c("Criterion",

                                                                        "CriteriaType",

                                                                        "AvgCpc"),  

                                             FilterList = NULL,

                                             IncludeVAT = "YES",

                                             IncludeDiscount = "NO",

                                             Login = adwordsIDref$Yandex_login[i],

                                             Token = adwordsIDref$YandexToken[i])

  6. 0
    3 месяца назад

    Спасибо за труды!
    Прошу прощения за вопрос новичка.
    Каким образом вывести стандартные метрики: количество кликов в год, месяц, день и так далее.
    Пока получилось только вывести название кампании сколько было кликов за всё время. При применении фильтра date ничего не происходит, всё равно выводит за весь период. Зависимости нет.
    При попытке соединить в связях из campList "Clicks" с Stat "Date" пишет о невозможности связи.
    В интернете искать бесполезно. Где получить больше информации о постройке графиков именно для связки Яндекс.Директ и Power Bi?
    Спасибо.

    • 0
      Alexandr Zagrebin
      3 месяца назад

      Здравствуйте, вряд ли у вас получится где то найти такую информацию сейчас, пакет для R  о котором идёт речь в статье писал я, используйте более новую функцию yadirGetReport.


      Вот пример кода как получить данные по  датам, за определённый период.


      library(ryandexdirect)

      myToken <- yadirGetToken()

      clientList <- yadirGetClientList(myToken)

      stat <- yadirGetReport(ReportType = "ACCOUNT_PERFORMANCE_REPORT",

                                      DateRangeType = "CUSTOM_DATE",

                                      DateFrom = "2017-01-01",

                                      DateTo = Sys.Date(),

                                      FieldNames = c("Date","Impressions","Clicks","Cost"),

                                      Login = clientList$Login,

                                      Token = myToken)

  7. 0
    5 месяцев назад

    Алексей, здравствуйте.

    Еще раз спасибо за статью, все подробно и понятно.

    Сейчас столкнулся с проблемой. 

    В кабинете яндекс.директ есть несколько аккаунтов, пытаюсь выгрузить данные по всем аккаунтам в одном скрипте: 

    library(ryandexdirect)
    clientList <- yadirGetClientList(myToken)
    campaignList <- yadirGetCampaignList(logins = clientList$Login, token = myToken)
    stat <- yadirGetSummaryStat(campaignIDS = campaignList$Id,
                                dateStart = "2017-01-01",
                                dateEnd = Sys.Date(),
                                token = myToken)

    Выгрузка занимает большой промежуток времени, плюс в значениях выгружается много не нужных полей.

    Подскажите, есть ли способ выгрузить данные по всем логинам из кабинета используя параметр: yadirGetReport или как то уменьшить кол-во значений в параметре yadirGetSummaryStat ?

    В итоге что хотим получить следующие данные:

    Дата - Логин - Клики - Показы - Затраты


    Заранее, спасибо!

    • 0
      Денис Кулешов
      5 месяцев назад

      Как и обещал немного доработал пакет ryandexdirect.


      Для начала обновить пакет до версии 2.4.1. с помощью кода

      devtools::install_github('selesnow/ryandexdirect')


      После чего функция yadirGetReport станет векторизирована, т.е. аргумент Login на вход будет принимать вектор логинов, и функция будет по очереди загружать данные по каждому, на выходе вы получите большую таблицу с данными по всем аккаунтам по которым получилось вытянуть данные. 

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


      library(ryandexdirect)

      myToken <- yadirGetToken()

      clientList <- yadirGetClientList(myToken)


      stat      <- yadirGetReport(ReportType = "ACCOUNT_PERFORMANCE_REPORT", 

                                      DateRangeType = "CUSTOM_DATE", 

                                      DateFrom = "2017-01-01", 

                                      DateTo = Sys.Date(), 

                                      FieldNames = c("Date","Impressions","Clicks","Cost"), 

                                      Login = clientList$Login, 

                                      Token = myToken)

    • 0
      Денис Кулешов
      5 месяцев назад

      Добрый день, сама по себе функция yadirGetSummaryStat становится уже устаревшей, я рекомендую использовать именно  yadirGetReport.


      Для того, что бы с помощью yadirGetReport получить данные из множества аккаунтов надо воспользоваться циклом, пример кода ниже:

      library(ryandexdirect)

      myToken <-  yadirGetToken()

      clientList <- yadirGetClientList(myToken)

      #Формируем результирующий дата фрейм

      result <- data.frame()

      #Проходим циклом по всем логинам

      for(log in clientList$Login){

      stat      <- yadirGetReport(ReportType = "ACCOUNT_PERFORMANCE_REPORT", 

                                      DateRangeType = "CUSTOM_DATE", 

                                      DateFrom = "2017-01-01", 

                                      DateTo = Sys.Date(), 

                                      FieldNames = c("Date","Impressions","Clicks","Cost"), 

                                      #FilterList = c("Clicks GREATER_THAN 49","Impressions LESS_THAN 1001"), 

                                      #IncludeVAT = "YES", 

                                      #IncludeDiscount = "NO",

                                      Login = log, 

                                      Token = myToken)


      #Добавляем поле логин 

      stat$login <- log

      #Присоединяем данные к результирующей таблице

      result <- rbind(result, stat)

      }


      В ближайшее время я перепишу функцию yadirGetReport таким образом что бы она была векторизирована и на вход принимала вектор из логинов.
  8. 0
    7 месяцев назад

    Алексей помогите! Пытаюсь установить ryandexdirect на R server (виртуальная машина Linux Ubuntu в сервисе Microsft Azure). Выскакивает ошибка при установке:

    https://s.mail.ru/89dv/c7GjNnL2u

    Как решить проблему? Спасибо!

    • 0
      Alexandr Pipko
      7 месяцев назад

      Добрый день, ругается на киррилицу, т.к. в функциях есть сообщения об ошибках и ходе выполнения операций на русском языке, поэтому он и ругается. 

      Вы можете сделать следующее, в папке R, на репозитоиии ryandexdirect в открытом доступе есть код каждой из функций пакета, поэтому вы можете просто скопировать код нужной функции, запустить его в RStudio и в вашем рабочем окружении появится нужная вам функция, только для их работы ещё предварительно надо установить пакет httr.


      В планах у меня есть написать дополнительную версия пакета без киррилицы для Linux, но сейчас на этой нет времени.

  9. 0
    7 месяцев назад

    Алексей, добрый день.

    Также заинтересовал ответ на вопрос предыдущего комментатора: "Подскажите, как можно дописать скрипт, что-бы он ежедневно подгружал данные за предыдущие день и добавлял их в массив данных. Сейчас скрипт обновляет весь массив это занимает значительное время."

    • 0
      Владимир Руденко
      7 месяцев назад
      К сожалению просто догрузить 1 день к уж загруженному массиву данных в Power BI нельзя, в данном случае для ускорения процесса загрузки данных вы можете сделать следующее: 1. Написать R скрипт который будет ежедневно запускаться по рассписанию, как это сделать подробно описано тут. 2. Этот скрипт будет обращаться к API Директа, забирать данные за вчерашний день и записывать их в какую нибудь базу данных, для записи в MySQL например можно использовать пакет RMySQL, для PostgreSQL - RPostgreSQL, для BigQuery - bigrquery. 3. Power BI подключить именно к базе данных а не тянуть инфу напрямую из API за весь период.
  10. 0
    7 месяцев назад

    Здравствуйте.

    Подскажите, как можно дописать скрипт, что-бы он ежедневно подгружал данные за предыдущие день и добавлял их в массив данных. Сейчас скрипт обновляет весь массив это занимает значительное время. 

    В данный момент скрипт выглядит следующим образом:

    #Подключаем пакет

    library(ryandexdirect)

    #Получаем список кампаний

    campList <- yadirGetCampaignList(logins = "Значение", token = "Значение")

    #Параметры

    Stat1 <- yadirGetReport(ReportType = "CAMPAIGN_PERFORMANCE_REPORT", 

    DateRangeType = "CUSTOM_DATE", 

                                DateFrom = "1.01.2017", 

                                DateTo = Sys.Date(), 

    FieldNames = c("Date", "CampaignId", "Device", "LocationOfPresenceId", "AdNetworkType", 

    "AvgCpc"), 

     

    FilterList = NULL, IncludeVAT = "NO", IncludeDiscount = "NO", 

    Login = "значение", Token = "Значение")


    • 0
      Денис Кулешов
      5 месяцев назад

      К сожалению просто догрузить 1 день к уж загруженному массиву данных в Power BI нельзя, в данном случае для ускорения процесса загрузки данных вы можете сделать следующее:


      1. Написать R скрипт который будет ежедневно запускаться по рассписанию, как это сделать подробно описано тут.

      2. Этот скрипт будет обращаться к API Директа, забирать данные за вчерашний день и записывать их в какую нибудь базу данных, для записи в MySQL например можно использовать пакет RMySQL, для PostgreSQL - RPostgreSQL, для BigQuery - bigrquery.

      3. Power BI подключить именно к базе данных а не тянуть инфу напрямую из API за весь период.

    • 0
      Денис Кулешов
      5 месяцев назад

      К сожалению просто догрузить 1 день к уж загруженному массиву данных в Power BI нельзя, в данном случае для ускорения процесса загрузки данных вы можете сделать следующее:


      1. Написать R скрипт который будет ежедневно запускаться по рассписанию, как это сделать подробно описано тут.

      2. Этот скрипт будет обращаться к API Директа, забирать данные за вчерашний день и записывать их в какую нибудь базу данных, для записи в MySQL например можно использовать пакет RMySQL, для PostgreSQL - RPostgreSQL, для BigQuery - bigrquery.

      3. Power BI подключить именно к базе данных а не тянуть инфу напрямую из API за весь период.

  11. 0
    7 месяцев назад
    С временным интервалом разобрался. Теперь еще сложнее задача для меня. Можно ли вытащить из Директа метки объявлений. У меня есть РСЯ кампания и там группы объявлений по всем направлениям (медицина), но стоят метки. Также с объявами в кампаниях на поиске И я свожу отчеты именно по меткам ежемесячно.  Хочется сделать статистику в Power BI именно по направлениям а для этого нужно группировать по меткам всё. Можете подсказать как это сделать? Заранее спасибо
  12. 0
    7 месяцев назад
    Добрый день, Алексей. Спасибо. Всё работает. Один вопрос. Статистика подгрузилась от 26.05.2017 по сегодняшний день. Как подгрузить более широкий диапазон времени? Например за год?
  13. 0
    7 месяцев назад
    Добрый день, Алексей. Спасибо. Всё работает. Один вопрос. Статистика подгрузилась от 27.05.2017 по сегодняшний день. Как подгрузить более широкий диапазон времени? Например за год?
  14. 0
    9 месяцев назад

    Алексей, а по какому признаку связать метрику и лиды из системы коллтрекинга? Есть опыт в такой связке?

    У меня есть каллибри и есть метрика. Как их связать, если значений уникальных нет не пойму..  Может где почитать про это есть..?

    • 0
      Алексей Махметхажиев
      9 месяцев назад
      По поводу такой связки хорошо если есть возможность передавать в систему коллтрекинга ClientID из Google Analytics, в таком случае его можно будет использовать как идентификатор, возможно вам по этому поводу лучше обратиться в поддержку вашей системы коллтрекинга, наверняка у ребят уже есть какие то готовые решения под неё.
  15. 0
    9 месяцев назад

    кстати, в tableau есть web data connector

    попробую его прикрутить 

  16. 0
    9 месяцев назад

    Ладно, сменой пользователя на английские буквы всё решилось!

    Подключаю уже R в BI - очень долго загружает данные.

    • 0
      Алексей Махметхажиев
      9 месяцев назад
      Да к сожалению в плане скорости загрузки данных R коннектор довольно медленный, и я так понимаю у вас в аккаунте много кампаний, собственно в этом причина долгой загрузки. Когда я писал эту статью ещё не было сервиса Reports в API Директа, советую вам попробовать переписать R код с использованием функции yadirGetReport - https://github.com/selesnow/ryandexdirect/blob/master/README.md#yadirgetreportreporttype--campaign_performance_report-daterangetype--last_month-datefrom--null-dateto--null-fieldnames--ccampaignnameimpressionsclickscost-filterlist--null-includevat--no-includediscount--no-login--null-token--null Пример кода: library(ryandexdirect) Stat <- yadirGetReport(ReportType = "CAMPAIGN_PERFORMANCE_REPORT", DateRangeType = "CUSTOM_DATE", DateFrom = '2017-01-01', DateTo = '2017-01-31', FieldNames = c("CampaignName","Impressions","Clicks"), FilterList = c("Clicks GREATER_THAN 49","Impressions LESS_THAN 1001"), Login = "<ВАШ ЛОГИН В ЯНДЕКСЕ>", Token = "<ВАШ ТОКЕН В ВИДЕ СТОКИ>") Этот вариант кода будет работать значительно быстрее, и у вас будет возможность создавать запрос к API с различными полями, почитайте справку по этой функции по ссылке которую я дал выше.
      • 0
        Алексей Селезнёв
        9 месяцев назад

        Ещё раз пример кода, прошлый комментарий 

        library(ryandexdirect)
        My_report <- yadirGetReport(ReportType = "CAMPAIGN_PERFORMANCE_REPORT", 
                                    DateRangeType = "CUSTOM_DATE", 
                                    DateFrom = '2017-01-01', 
                                    DateTo = '2017-01-31', 
                                    FieldNames = c("CampaignName","Impressions","Clicks"), 
                                    FilterList = c("Clicks GREATER_THAN 10","Impressions LESS_THAN 5001"), 
                                    Login = <ВАШ ЛОГИН В ЯНДЕКСЕ>, 
                                    Token = <ВАШ ТОКЕН В ВИДЕ СТОКИ>)
  17. 0
    9 месяцев назад

    эх)) моя бы воля.. нажал бы delete для всей винды по всему миру и закончились бы мучения у людей)

    Warning in install.packages("bitops") :

      'lib = "C:/Program Files/R/R-3.4.1/library"' is not writable

    Error in install.packages("bitops") : 

      unable to create ‘C:\Users\<U+0410><U+0434><U+043C><U+0438><U+043D>\Documents/R/win-library/3.4’

    In addition: Warning message:

    In dir.create(userdir, recursive = TRUE) :

      cannot create dir 'C:\Users\<U+0410><U+0434><U+043C><U+0438><U+043D>', reason 'Invalid argument'

    >


    ну вот что ему надо, а?)) ну что не создать ему и почему это моя блин проблема?)) 

    не прошу разбираться в моём случае, так, для статистики и для SEO по этой проблеме. 

    Сейчас меняю юзера и права редактирую. Всё позабывал уже в винде. Сложно.

  18. 0
    9 месяцев назад

    could not find function "install_github"


    ох, потратил 2 часа на борьбу с виндой.. Как же на макос всё летает, а на винде любой тупит.

    Не завелось.


    Алексей, а как тоже самое сделать на MACoS с Tableau? Не нашел я в табло коннектора с R 

    • 0
      Алексей Махметхажиев
      9 месяцев назад

      Добрый день.

      1. could not find function "install_github", сначала надо установить пакет devtools, т.е. install.packages("devtools") , т.к. функция install_github принадлежит именно этому пакету.


      2. А как тоже самое сделать на MACoS с Tableau? Не нашел я в табло коннектора с R, совершенно верно в Tableau сделать так нельзя, разве что с помощью R скриптов по которые будут запускаться по расписанию собирать в какую нибудь базу данных всю инфу, и Tableau подключить уже именно к базе данных. Всё что умеет Tableau с R делать, это читать данные из RData файлов.

  19. 0
    9 месяцев назад
    Алексей, добрый день! спасибо за статью, все очень подробно описано и работает. А есть ли подобна статья для связи adwords и power bi ?
  20. 1
    9 месяцев назад

    Добрый день!

    Алексей подскажите сколько будет стоить разработка коннектора power bi с crm bitrix24?

  21. 0
    9 месяцев назад

    Попробовал с помощью сценария на языке R, та же самая проблема.

  22. 0
    9 месяцев назад

    Алексей спасибо за статью.

    Подключался через Ваш коннектор. 

    Вопрос в следующем, если сравнивать дату в статистике Яндекс Директ и через коннектор Power bi, то они не бьются, различия с разницей в 1 день.

    То есть например, 21.06.17 - 108 показов и 9 кликов согласно статистике Яндекс Директ.

    Берем ту же Дату в системе Power Bi, то там другие цифры, но если поставить дату на день раньше, то данные совпадают.

    Подскажите как решить данную проблему?

    Спасибо!

    • 0
      Максим Чубаров
      9 месяцев назад

      Здравствуйте, видимо проблема возникает в том то формат даты разный, самый простой способ исправить проблему это создать дополнительный столбец true_date, на DAX написать формулу true_date = Stat[Date] - 1.


      По идее должно сработать.

  23. 0
    год назад

    Вопрос по бюджету? Не нашёл поля бюджет аккаунта. Как его получить?
    Также не нашёл конверсии(
    Буду благодарен за информацию!




  24. 0
    год назад

    Друзья, как организовать цикл на Языке R?
    Допустим у меня есть 5 аккаунтов Яндекса, с которых мне нужно собрать и проанализировать статистику. Аккаунты Яндекса, а именно логин и пароль я ввожу в отдельную таблицу в Power BL, далее нужно перебрать по циклу логин и токен и запросить все данные с аккаунтов. Как это сделать? Как именно перебрать таблицу? 

    Спасибо!) 

    • 0
      Ruslan Nutfullov
      год назад

      Добрый день, можно конечно и в Power BI руками ввести нужные данные и потом с помощью R и цикла их перебрать ну я вам советую создать csv файл в котором буде храниться логины и ТОКЕНЫ (пароли не нужны).


      Далее тоже самое что я вам описывал без цикла в виде цикла будет в принципе выглядеть примерно так:


      #Подключаем пакет

      library(ryandexdirect)


      #Формируем Data Frame со списком логинов и токенов

      dictionary <- data.frame(login = c("LOGIN1","LOGIN2"),

                                               token = c("TOKEN1","TOKEN2"))


      #Результирующий DataFrame

      Stat <- data.frame()


      #Запускаем цикл

      for(i in 1:nrow(dictionary)){

      #Получаем список кампаний первого аккаунта

      campList <- yadirGetCampaignList(logins = dictionary$login[i], token = dictionary$token[i])


      #Получаем статистику по кампаниям первого аккаунта

      StatTemp <- yadirGetSummaryStat(campaignIDS = campList$Id,

                                 dateStart = Sys.Date() - 90,

                                 dateEnd = Sys.Date(),

                                 token = dictionary$login[i])

      #Соединяем в одну таблицу

      Stat <- rbind(StatStatTemp)}



      В объект dictionary впишите все логины и токены, каждый логин при этом по порядку должен соответствовать своему токену.


      dictionary <- data.frame(login = c("LOGIN1","LOGIN2"),

                                               token = c("TOKEN1","TOKEN2"))



      Если вы всё таки решили эти данные хранить в csv таблице то вмесо команды выше напишите:


      dictionary <- read.table(file = "C:/Users/UserName/MyDictionary.csv", sep = ";", dec = "," , header = T)



      В аргументе file пропишите правильный путь к вашему csv файлу, файл должен состоять из двух колонок login и token, поля должны быть разделены точкой запятой (в противном случае измените аргумент sep).

      • 0
        Алексей Селезнёв
        год назад
        По варианту с ручным вводом логинов и токено не коннектиться, та же самая ошибка. Хотя все данные верны
      • 0
        Алексей Селезнёв
        год назад

        Всё сделал как по инструкции и тут ошибка

        Подробности: "ADO.NET: Ошибка сценария R.

        Ошибка в yadirGetCampaignList(logins = dictionary$login[i], token = dictionary$token[i]) :

          Ошибка авторизации - Client-Login не соответствует авторизационному токену

        Выполнение остановлено


        Если авторизовываться отдельно, то всё работает, логин и токен верный. 

        Авторизовываюсь через файл

        • 0
          Ruslan Nutfullov
          год назад

          можете ваш код прикрепить просто вмест ологинов подставьте логин1 логин2 и т.д. и вместо токенов токен1, токен2 и т.д.


          Так мне будет проще воспроизвести вашу ошибку и помочь.

          • 0
            Алексей Селезнёв
            год назад

            #Подключаем пакет


            library(ryandexdirect)



            #Формируем Data Frame со списком логинов и токенов


            dictionary <- read.table(file = "C:/Users/Polina/Desktop/BDKuhni/bd.csv", sep = ";", dec = "," , header = T)



            #Результирующий DataFrame


            Stat <- data.frame()




            #Запускаем цикл


            for(i in 1:nrow(dictionary)){


            #Получаем список кампаний первого аккаунта


            campList <- yadirGetCampaignList(logins = dictionary$login[i], token = dictionary$token[i])



            #Получаем статистику по кампаниям первого аккаунта


            StatTemp <- yadirGetSummaryStat(campaignIDS = campList$Id,


                                       dateStart = Sys.Date() - 90,


                                       dateEnd = Sys.Date(),


                                       token = dictionary$login[i])


            #Соединяем в одну таблицу


            Stat <- rbind(Stat, StatTemp)}


            Файл с аккаунтами: https://yadi.sk/d/xCx4kJDa3GsFSq
            Огромное спасибо! 

      • 0
        Алексей Селезнёв
        год назад
        Огромное спасибо!))))) 
  25. 0
    год назад

    Александр, огромное спасибо за полезную статью!) А есть ли возможность подключить сразу несколько аккаунтов Яндекс Директ и получать данные с каждого аккаунта? Спасибо! 


    • 0
      Ruslan Nutfullov
      год назад

      Добрый день, есть такая возможность, просто необходимо циу=клом пройтись по всем аккаунтам и собрать данные, либо без цикла в коде прописать обращение  каждому аккаунту в отдельности. 


      Просто скопируйте код столько раз сколько у вас аккаунтов, и для каждого укажите его логин и пароль.

      #Подключаем пакет

      library(ryandexdirect)


      #Получаем список кампаний первого аккаунта

      campList1 <- yadirGetCampaignList(logins = "<ВАШ ЛОГИН НА ЯНДЕКСЕ1>", token = "<ВАШ ТОКЕН1 В ВИДЕ СТОКИ>")


      #Получаем статистику по кампаниям первого аккаунта

      Stat1 <- yadirGetSummaryStat(campaignIDS = campList1$Id,

                                 dateStart = Sys.Date() - 90,

                                 dateEnd = Sys.Date(),

                                 token = "<ВАШ ТОКЕН1 В ВИДЕ СТОКИ>")


      #Получаем список кампаний второго аккаунта

      campList2 <- yadirGetCampaignList(logins = "<ВАШ ЛОГИН НА ЯНДЕКСЕ2>", token = "<ВАШ ТОКЕН2 В ВИДЕ СТОКИ>")


      #Получаем статистику по кампаниям первого аккаунта

      Stat2 <- yadirGetSummaryStat(campaignIDS = campList2$Id,

                                 dateStart = Sys.Date() - 90,

                                 dateEnd = Sys.Date(),

                                 token = "<ВАШ ТОКЕН2 В ВИДЕ СТОКИ>")


      #Соединяем в одну таблицу

      Stat <- rbind(Stat1, Stat2)



      Примерно так это выглядит без цикла, если будут вопросы обращайтесь.
      • 0
        Алексей Селезнёв
        год назад
        И ещё вопрос, реально ли собирать также данные по бюджету каждого аккаунта? Спасибо!))) 
      • 0
        Алексей Селезнёв
        год назад
        У меня просто несколько разных кампаний и нужно оперативно отслеживать данные по всем кампаниям, Ваше решение просто гениальное!) 
      • 0
        Алексей Селезнёв
        год назад
        Огромнейшее спасибо! А как написать в цикле?))) И было бы круто сделать через форму, как в файле коннектора))) 
  26. 0
    год назад

    подкл
    Здравствуйте.
    Пытаюсь загрузить статистику по кампаниям, выдает ошибку

    "Подробности: "ADO.NET: Ошибка сценария R.

    Ошибка: не могу найти функцию "yadirGetSummaryStat"

    Выполнение остановлено"

    Как его исправить? Подскажите.

  27. 0
    год назад

    При загрузке возникает ошибка, подскажите, пожалуйста, как её решить:

    ------------------------------------------------------------------------

    DataSource.Error: ADO.NET: Ошибка сценария R.

    Предупреждение:

    В strptime(x, f) :

      unable to identify current timezone 'AB@0E0=A:>5 ':

    please set environment variable 'TZ'

    Ошибка в curl::curl_fetch_memory(url, handle = handle) :

      Timeout was reached

    Вызовы: yadirGetSummaryStat ... request_fetch -> request_fetch.write_memory -> <Anonymous> -> .Call

    Выполнение остановлено

    --------------------------------------------------------------------------

    • 0
      Aleksandr
      год назад

      Возможно вы найдёте ответ тут - http://stackoverflow.com/questions/17783686/solution-how-to-install-github-when-there-is-a-proxy


      У вас установлен пакет 'devtools'?

      • 0
        Алексей Селезнёв
        год назад

        Да, пакет установлен. Пробую и через файл и через r-скрипт. Результат одинаковый.

        Команда "Sys.timezone()" Выдает следущее:

        ------------------------------------------------------------------------

        [1] "unknown"

        Warning message:

        In Sys.timezone() :

          unable to identify current timezone 'AB@0E0=A:>5 ':

        please set environment variable 'TZ'

        ------------------------------------------------------------------------

        Я так понимаю нужно как-то установить системную timezone.

    • 0
      Aleksandr
      год назад

      Честно говоря у меня не получилось воспроизвести вашу ошибку.

      Вы пользуетесь готовым скачанным Power BI файлом который можно скачать в конце статьи, или пробуете самостоятельно ввести R скрипт в Power BI?


      Ещё проблема может возникнуть если имя пользователя через который вы входите в операционную систему задано русскими буквами, в таком случае попробуйте создать нового пользователя с админскими правами задав его имя латиницей, и попробовать запустить тоже самое из под него.

  28. 0
    год назад

    Добрый день, поймал такой баг, вдруг кто знает

    Заранее благодарю.
    > install_github('selesnow/ryandexdirect')
    Downloading GitHub repo selesnow/ryandexdirect@master
    from URL https://api.github.com/repos/selesnow/ryandexdirect/zipball/master
    Installing ryandexdirect
    "C:/PROGRA~1/R/R-33~1.3/bin/x64/R" --no-site-file --no-environ --no-save  \
      --no-restore --quiet CMD INSTALL  \
      "C:/Users/1/AppData/Local/Temp/Rtmp8SiLVO/devtools148c232d62ec/selesnow-ryandexdirect-036cf69"  \
      --library="C:/Program Files/R/R-3.3.3/library" --install-tests 
    
    * installing *source* package 'ryandexdirect' ...
    ** R
    ** preparing package for lazy loading
    Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : 
      there is no package called 'bitops'
    ERROR: lazy loading failed for package 'ryandexdirect'
    * removing 'C:/Program Files/R/R-3.3.3/library/ryandexdirect'
    Error: Command failed (1)
  29. 0
    год назад

    Алексей, спасибо большое за статьи и библиотеку.


    1) Сбилось на гитлабе http://joxi.ru/MAj1PaLu48LR02


    2) При вызове функции 

    stat <- yadirGetSummaryStat(campaignIDS = campList$Id, dateStart = Sys.Date()-1, dateEnd = Sys.Date()-1, currency = "RUB", token = ya_token)

    Расход возвращается в у.е , а не в рублях.


    3) При вызове функции campList <- yadirGetCampaignList(logins = NULL, token = ya_token)

    показывается Warning message:

    In ifelse(is.null(dataRaw$result$Campaigns[[i]]$DailyBudget$Amount),  :  NAs introduced by coercion to integer range

    При том, дейсвительно в этих полях возвращается не цифровое значение: http://joxi.ru/l2ZNJoPIwaN8v2


  30. 1
    год назад

    Алексей Селезнёв, большое спасибо за Ваш труд, ему цены нет!!!!

    еще хотел спросить, будет ли информация у Вас по коннекторам из срм систем, самых популярных таких как битрикс24, ретейлсрм, или амо? или это очень трудоемкий процесс, и коннектор очень не просто делается? 

    и если трудно то можно ли создать его за деньги? например создать счет на который могли б скинуться несколько человек, и если наберется сумма то Ваш программист сделает этот коннектор

    • 0
      Ярослав Качур
      год назад
      Можно еще создать счет, на который бы скинулись несколько читателей, чтобы я опубликовал об этом пост ;)
    • 0
      Ярослав Качур
      год назад
      Добрый день, пока что у меня в работе не было задачи для написания коннектора к этим системам, процесс написания коннектора в самом деле достаточно трудоёмкий потому что для этого необходимо изучить документацию по работ с API конкретной системы, но такой коннектор можно заказать в рамках услуги разработка веб аналитического инструмента, и я посмотрю что можно придумать.
  31. 0
    год назад
    Добрый день! коннектор не грузится( поправьте плз ссылку
  32. 0
    год назад

    Сервис - суть - визуализации, поэтому там нет смысла работать просто с данными.


    Вопрос - найдёте ли с десяток пользователей Power BI Pro - чтобы добавить ваш package в каталог и хотя бы иметь возможность "поиграться" там?

    • 0
      Дмитрий Кучеров
      год назад

      Я думаю с этим пока лучше подождать, у меня есть идеи как улучшить пакет, и я жду выхода 5 версии API Директа, надеюсь на то что там возможность запроса данных будет пошире.


      Сейчас другие разрезы данных можно получить только отправив по API запрос в мастер отчётов, но проблема в том что мастер отчётов в таком случае отдаёт ответ в xml формате, который в R парсить сплошная боль.

    • 0
      Дмитрий Кучеров
      год назад
      Прошу, прощения, Алексей, но с мобильного - ответ на самый нижний коммент появляется тут :-(
  33. 0
    год назад

    Здравствуйте! У меня происходит ошибка. 

    installing *source* package 'ryandexdirect' ...

    Предупреждение в file(file, if (append) "a" else "w") :

      РЅРµ РјРѕРіСѓ открыть файл 'C:/Users/Qepcei/Documents/R/win-library/3.3/ryandexdirect/DESCRIPTION': No such file or directory

    Error in file(file, if (append) "a" else "w") :

      РЅРµ РјРѕРіСѓ открыть соединение

    ERROR: installing package DESCRIPTION failed for package 'ryandexdirect'

    * removing 'C:/Users/Сергей/Documents/R/win-library/3.3/ryandexdirect'

    Ошибка: Command failed (1)

    • 0
      Sergey Gamarko
      год назад

      У вас в пути к библиотеке пакетов R, есть папка которая названа киррилицей, это папка с именем пользователя. 'C:/Users/Сергей/Documents/R/win-library/3.3/ryandexdirect'


      1. Сощдайте в ОС другого пользователя, что бы название учётной записи писалось только английскими буквами.

      2. Зайдите в Windows под новой учётной записью и попробуйте повторно установить пакет.
  34. 0
    год назад

    bitops - есть, кстати

  35. 0
    год назад

    Спасибо за отличную статью.

    Есть один вопрос: это конечный список показателей, которые можно выгрузить из Директа? Просто я не нашёл среди них ни CPC, ни общий расход на РК

    • 0
      Захар Костицын
      год назад

      Уже сам разобрался и нашёл как минимум общий расход =)

      Единственная проблема - данные совпадают не полностью. Количество кликов и расход иногда существенно расходятся с данными из интерфейса. А в таком случае зачем тогда использовать этот сервис?

      • 0
        Захар Костицын
        год назад

        1. Я собираю данные по сотням аккаунтов и ни в одном не было расхождений по кликам и показам, данные по расходу будут сходиться но вы их получаете в условных единицах яндекса. Ищите ошибку у себя.

        2. Никакого смысла в том что бы тянуть расчитанный cpc нет, т.к. вы его толком использорвать не сможете, у вас есть все данные для расчёта, создайте пользовательскую меру с элементарной формулой:

        cpc = iferror((sum(stat[SumSearch]) + sum(stat[SumSearch])) / sum(stat[ClickSearch]) + sum(stat[ClicksContext]) ; 0)

        И в вашей модели данных появится поле cpc которое будет отображать стоимость клика.



         
        • 0
          Алексей Селезнёв
          год назад

          Алексей, тоже заметила у себя расхождения в данных - долго не могла понять, в чём дело. Оказалось, что в выгруженных данных смещается дата на 1 день. Думаю тут дело в Sys.Date()

          • 0
            Alena Agapova
            год назад

            А вот такая ситуация может быть из-за разного формата дат, я проверю всё и отпишусь.

            Временным решением может быть пользовательское поле в котором будет от даты в текущей строке отниматься 1.

            • 0
              Алексей Селезнёв
              год назад

              "Вы пользуетесь готовым файлом который можно скачать в конце статьи, или сами писали R скрипт с помощью этой статьи?"


              Сама писала R script
            • 0
              Алексей Селезнёв
              год назад

              Алексей, ещё вопрос. У меня возникают проблемы с переименованием/перемещение столбцов. Как только переименовываю столбец или перемещаю его или изменяю его тип (например campaign id), возникает ошибка "Expression.Error: Столбец CampaignID таблицы не найден".

              Ошибка возникает даже, если это является моим первым действием после выгрузки данных (т.е. это вряд ли конфликт с предыдущими шагами)..

              • 0
                Alena Agapova
                год назад
                Вы пользуетесь готовым файлом который можно скачать в конце статьи, или сами писали R скрипт с помощью этой статьи?
            • 0
              Алексей Селезнёв
              год назад

              Спасибо!


  36. 0
    год назад

    Алексей, а пробовали реализовать вывод данных для всех клиентов в агентском аккаунте  ? То есть чтобы несколько акков прогружать в Power BI. 

    • 0
      Konstantin Podyakov
      год назад

      Пробовал, решение ниже, дублирую сюда.

      R скрипт который надо вставить в Power BI будет выглядеть следующим образом:

      library(ryandexdirect)

      clientList <- yadirGetClientList(<Token>)

      campaignList <- yadirGetCampaignList(logins = clientList$Login[clientList$Login %in% c(<Login1>,<Login2>)], token = <Token>)

      stat <- yadirGetSummaryStat(campaignIDS = campaignList$Id,

                                  dateStart = "2016-01-01",

                                  dateEnd = "2016-06-30",

                                  token = <Token>)


      В код подставьте в кавычках вместо:

      <Token> - "свой токен"

      <Login1> - "логин 1го клиента"

      <Login2> - "логин 2го клиента"

      Далее в Power PI будет загружено 3 таблицы:


      clientList - список клиентов агентсткого аккаунта

      campaignList - список всех рекламных кампаний по всем клиентам

      stat - статистика по всем рекламным кампаниям по клиентам чьи логины вы указале в строке campaignList <- yadirGetCampaignList(logins = clientList$Login[clientList$Login %in% c(<Login1>,<Login2>)], token = <Token>)


      Связи между таблицами можно настроить следующим образом:

      1. Поле CampaignID из таблицы stat служит ключём к таблице campaignList по полю Id.

      2. Поле login из таблицы campaignList служит ключём к таблице clientList по полю Login.

      • 0
        Алексей Селезнёв
        год назад

        Добрый день, Алексей! 

        Попробовал выполнить код для агентского аккаунта и получил ошибку 








        • 0
          Антон
          год назад

          Добрый день, Алексей! 

          Попробовал выполнить код для агентского аккаунта и получил ошибку :



          Подробности: "ADO.NET: Ошибка сценария R.

          Ошибка в yadirGetCampaignList(logins = clientList$Login[clientList$Login %in%  :

            Нет прав - Нет прав на указанного клиента

          Выполнение остановлено

          Помогите!











          • 0
            Антон
            год назад
            Добрый день, возможно вы токен получили для какого то другого аккаунта, или в логине допустили ошибку, например указываете его с LOGIN@yandex.ru.
  37. 0
    год назад

    Алексей, спасибо за статью.

    Подскажите, как будет выглядеть запрос, если стоит задача выгрузить в одну таблицу данные из двух клиентских кабинетов на одном агентском логине?

    • 0
      Альберт Шайхутдинов
      год назад

      Добрый день, R скрипт который надо вставить в Power BI будет выглядеть следующим образом:

      library(ryandexdirect)

      clientList <- yadirGetClientList(<Token>)

      campaignList <- yadirGetCampaignList(logins = clientList$Login[clientList$Login %in% c(<Login1>,<Login2>)], token = <Token>)

      stat <- yadirGetSummaryStat(campaignIDS = campaignList$Id,

                                  dateStart = "2016-01-01",

                                  dateEnd = "2016-06-30",

                                  token = <Token>)


      В код подставьте в кавычках вместо:

      <Token> - "свой токен"

      <Login1> - "логин 1го клиента"

      <Login2> - "логин 2го клиента"

      Далее в Power PI будет загружено 3 таблицы:


      clientList - список клиентов агентсткого аккаунта

      campaignList - список всех рекламных кампаний по всем клиентам

      stat - статистика по всем рекламным кампаниям по клиентам чьи логины вы указале в строке campaignList <- yadirGetCampaignList(logins = clientList$Login[clientList$Login %in% c(<Login1>,<Login2>)], token = <Token>)


      Связи между таблицами можно настроить следующим образом:

      1. Поле CampaignID из таблицы stat служит ключём к таблице campaignList по полю Id.

      2. Поле login из таблицы campaignList служит ключём к таблице clientList по полю Login.

      • 0
        Алексей Селезнёв
        год назад

        Добрый день. Возникает ошибка:

        Подробности: "ADO.NET: Ошибка сценария R.

        Ошибка в dataRaw$data[[i]][c("FIO", "Login", "DateCreate", "Phone", "Email",  :

          неправильный тип подгруппы 'list'

        Вызовы: yadirGetClientList

        Выполнение остановлено

        "



        • 0
          Alena Agapova
          год назад

          Эта ошибка возникает в случае если вы пытаетесь вытянуть список клиентов не из агентского аккаунта.


          Т.е. вы сгенерировали токен для обычного аккаунта, в котором списка клиентов быть не может, а функция yadirGetClientList работает только с агентским аккаунтом.


          Либо залогиньтесь под агентским аккаунтом и повторно сгенерируйте токен, либо вам просто нет смысла загружать список клиентов т.к. в обычном аккаунте его просто не существует.
      • 0
        Алексей Селезнёв
        год назад

        Алексей, почему-то при загрузке каких-то отдельных логинов выдает ошибку:

        Произошла ошибка при попытке подключения:

        Подробности: "ADO.NET: Ошибка сценария R.

        Ошибка в curl::curl_fetch_memory(url, handle = handle) :

          Timeout was reached

        Вызовы: yadirGetSummaryStat ... request_fetch -> request_fetch.write_memory -> <Anonymous> -> .Call

        Выполнение остановлено

        "

        • 0
          Альберт Шайхутдинов
          год назад
          Честно говоря сейчас затрудняюсь ответить в чём может быть ошибка, возможно какие то проблемы с доступами к этим аккаунтам?
  38. 0
    год назад

    При подключении пакета ryandexdirect в R-studio вот такая ошибка, что делать?

    * installing *source* package 'ryandexdirect' ...

    ** R

    ** preparing package for lazy loading

    Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : 

      there is no package called 'bitops'

    ERROR: lazy loading failed for package 'ryandexdirect'

    * removing 'C:/Users/Motor/Documents/R/win-library/3.3/ryandexdirect'

    Ошибка: Command failed (1)

    • 0
      Serg Motor
      год назад

      Здравствуйте!

      Перед установкой пакета ryandexdirect установите пакет bitops с помощью следующего кода.


      install.packages("bitops")

      • 0
        Алексей Селезнёв
        год назад

        Благодарю, все заработало!!!

        Но, если получать данные из агентского аккаунта, то данные пустые. Так и должно быть?
        • 0
          Serg Motor
          год назад
          По идее такой проблемы быть не должно, функция работает и с агентским аккаунтом и с обычным,  в случае если запрашиваете данные из агентского аккаунта логин необходимо задавать всё равно клиентский, возможно в этом ошибка?
          • 0
            Алексей Селезнёв
            год назад
            Ошибку исправили сообща. Огромная Благодарность за помощь. :)
            • 0
              Serg Motor
              год назад
              Поделитесь, пожалуйста, своим решением. Возникла аналогичная проблема.
  39. 0
    год назад

    Приветствую, при установке пакета ryandexdirect в R-studio вот такая ошибка, что делать?

    * installing *source* package 'ryandexdirect' ...

    ** R

    ** preparing package for lazy loading

    Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : 

      there is no package called 'bitops'

    ERROR: lazy loading failed for package 'ryandexdirect'

    * removing 'C:/Users/Motor/Documents/R/win-library/3.3/ryandexdirect'

    Ошибка: Command failed (1)

  40. 1
    год назад

    Добрый день. Спасибо за статью

    Вопрос от новичка:

    Если я сделаю отчет по данным метода 3,1 и опубликую в Power BI онлайн. То там данные также автоматически будут по датам обновлятся? Например как с ГА

    Или отчет нужно будет каждый раз обновлять через Десктоп?

    Заранее спасибо за ответ



Чтобы оставить комментарий, необходимо авторизироваться

Подписаться

на самую полезную рассылку по интернет-маркетингу

Самое

обсуждаемое популярное читаемое