Во все времена люди разных конфессий, взглядов и интересов объединялись перед лицом общего врага. Этот враг меняется, но сама война продолжается, проходя через пики и спады. Посмотрите новости, почитайте газеты - вы увидите, что напряжение в мире снова нарастает, на часах судного дня 2,5 минут до полуночи, и грядет апогей мировых конфликтов. Так кто же он, главный враг человечества в 21 веке? Искусственный интеллект? Пхеньян? Танос? Нет, друзья, он куда ближе и реальнее, чем вы думаете, но гораздо опаснее! Это скромная svg 18 на 18 пикселей, которую вы без труда узнаете по предостерегающему желтому цвету и символу щита, предупреждающему о необходимости укрыться. Треппщщте, гссппда, у ваа ссмпиинг
Содержание
Сегодня с семплингом будем бороться с помощью R.
Что нужно для выгрузки несемплированных данных?
Качаем R https://cloud.r-project.org/
Качаем RStudio для работы с R https://www.rstudio.com/products/rstudio/download/
Запускаем Rstudio. Вот такая иконка
Cтавим библиотеку
devtools
install.packages("devtools")
Вы можете выполнять код в консоли, но лучше создать новый файл
Ctrl+Shift+N
и писать скрипт в нем. Для запуска в этом случае нужно выделить код и нажатьCtrl+Enter
.Подключаем библиотеку
devtools
и ставим библиотекуrga
library(devtools) install_github("skardhamar/rga")
За неё большое спасибо вот этому парню https://github.com/skardhamar/rga
Подключаем
rga
и создаем инстанс для работы с API гуглаlibrary(rga) rga.open(instance="ga")
После этого приложение запросит у вас доступ к аккаунту Google. Выберите тот, под которым доступны счетчики. Если все окей, появится токен вроде этого
4/5T6Fh650QOox5lurBgwApkIcyWdXAOXCddQKytGM6X8
Его нужно скопировать и ввести в консоли в RStudio туда, где написано «Please enter code here»
Как выгрузить данные из Google Analytics без семплинга?
Теперь для того, чтобы скачать данные, вам нужно использовать метод getData
из созданного объекта ga
. Например, вот так
ga$getData(
138249714, # указываем номер представления
batch = TRUE,
walk = TRUE, # TRUE для обхода семплинга и склейки по дням
start.date = "2017-04-15",
end.date = "2017-10-15",
metrics = "ga:visits,ga:users",
dimensions = "ga:source",
segment = "",
filter = "ga:medium==organic"
)
Номер представления можно посмотреть в интерфейсе Google Analytics
или взять из url
https://analytics.google.com/analytics/web/?hl=ru&pli=1#report/content-pages/a87441111w134047391p138249714/ Вот и все! Выделяем и жмем Ctrl+Enter
. Для обхода семплинга библиотека rga
использует тот же принцип, что и все подобные сервисы - выкачивает данные по дням и суммирует. У этого подхода есть очевидные минусы, о которых нужно помнить:
- Запрашивая показатель "Пользователи", например, за неделю, вы получите сумму уникальных по дням. Т.е. если юзер заходил каждый день, он посчитается 7 раз.
- Рассчитываемые показатели, например, "
Средняя длительность просмотра страницы" так же будут суммироваться по дням, а значит, вам нужно скачать данные, необходимые для их расчета, и прикинуть самостоятельно. В данном случае это
ga:timeOnPage / (ga:pageviews - ga:exits)
Как составить запрос в Analytics Reporting API?
Вот вам пара ссылок в помощь для составления запросов к Reporting API:
Dimensions & Metrics Explorer - официальный справочник параметров и показателей
Query Explorer - сторонняя утилита с веб-интерфейсом для составления запросов к API. Позволит предварительно все отладить, сообщит, когда семплинг, и поможет разобраться с сегментами: создав сегмент в GA, вы увидите его в Query Explorer и сможете глянуть его код.