Google Analytics API v4 + R programski jezik

Google analitika je jedna od najpopularnijih alatki za setup, reporting i analizu podataka koji se tiču sajta. Google Analytics takođe nudi besplatan API (application programming interface) u cilju eksportovanja podataka sa GA servera ka eksternim sistemima. Tutorijal iz nastavka je pre svega za sve one koji imaju napredno znanje i aktivno koriste Google Analytics alat i za sve one koji bi želeli da nauče kako da povežu ovaj alat kao dodatni izvor podataka kroz R programski jezik. Važno je takođe posedovati i osnovno znanje R-a.

U nastavku su samo neke od osnovnih primera vizualizacija koje je moguće uraditi sa podacima.

Kako bi uspešno iskoristili ovaj tutorijal pretpostavka je da imate pristup Google Analytics nalogu i da je vaš Gmail uspešno povezan tj. da mu je dozvoljeno da pristupi GA alatu.

R programski jezik

R je programski jezik koji je jedan od najbrže rastućih jezika za statističku analizu podataka. Sa bazom korisnika koja raste (trenutno između 1-2 miliona) ima široku upotrebu kod statističara, analitičara i data minera.

U ovom tutorijalu je samo mali deo onoga šta možete da uradite koristeći R programski jezik.

  • najbrže rastući jezik za statističku analizu podataka
  • besplatan je
  • kvalitetne biblioteke
  • puno materijala za edukaciju i učenje (blogovi, kursevi, knjige)
  • velika zajednica širom interneta
  • spreman za razne platforme (Windows, Mac, Unix)

R Studio

R Studio predstavlja jedan od najkorišćenijih IDEs i najlakši način da počnete sa R-om. Sa njim možete pisati, editovati i pokrenuti svoj R kod, a takođe i videti outpute koda i vizualizacije. Besplatnu verziju možete skinuti na ovom linku download.

 

Setup Google Analytics API v4 + R

googleAnalyticsR - Google Analytics API to R

Kako bi se uspešno povukli podaci sa Google Analytics servera i uvukli u R Studio kroz API biće potrebno da se upotrebi eksterna biblioteka. Ona će vam pomoći da pre svega autorizujete konekciju, povučete podatake i kasnije kroz dataframe analizirate iste.

googleAnalyticsR

Trenutno jedna od najboljih eksternih biblioteka za povlačenje podataka iz Google Analytics u R je definitivno googleAnalyticsR biblioteka koju je kreirao Mark Edmonson. On je dobro poznat analitičkoj zajednici pre svega po svom fenomenalnom doprinosu i razvoju kvalitetnih biblioteka koje se prevashodno tiču Google stack-a (googleAuthR, bigQueryR,  searchConsoleR to name a few).

googleAnalyticsR u par crta:

  • Prva Google Analytics Reporting v4 API biblioteka za R programski jezik
  • v4 uključuje dinamičke calculated metrike, pivote, histograme, batching itd
  • v4 API Explorer
  • Multi user log-in za Shiny App
  • Integracija sa BigQuery Google Analytics Premium/360
  • Jednostavna autentifikacija kroz googleAuthR
  • Automatski batching i izbegavanje sampling-a

Pisanje skripte i koda u R-u

Nakon što ste instalirali R i RStudio, potrebno je da instalirate potrebne biblioteke i da ih nakon toga učitate. Kada ste ovaj početni setup uspešno uradili, na redu je autorizacija vašeg Gmail naloga sa Google Analytics alatom. Ako ste sve dobro uradili, potrebno je da definišete Google Analytics View ID a najlakše da dođete do ovog ID-a je da pogledate Account listu svih GA naloga za koje imate pristup za vašu email adresu.

Analiza podataka

Nakon što ste uspešno instalirali potrebne pakete i autentifikovali se, sledeći korak je povlačenje podataka direktno iz Google Analytics API-a.

U nastavku je napisan upit (query) pod nazivom df_sessions koji se odnosi na povlačenje podataka sa GA servera za željeni period od početka 2016. godine pa do septembra iste godine.

Za metriku je definisana poseta (session) dok je za dimenziju definisan datum (date). Pretpostavka je da znate sve moguće kombinacije dimenzija i metrika koje se nalaze u Google Analytics-u a ako hoćete da ih istražujete to možete da uradite na zvaničnoj stranici Dimensions & Metrics Explorer. Svakako sve dostupne podatke iz GA i njihovo objašnjenje sam pominjao i u ovom tekstu.

Vizualizacija Google Analytics podataka kroz R i ggplot2

R programski jezik ima jako puno interesantnih i kvalitetnih biblioteka za vizualizaciju podataka. Jedna od najpopularnijih je ggplot2 koja je izrađena na osnovu Grammar of Graphics i ona je trenutno deo Tidyverse paketa.

Line chart

U nastavku je kod za line chart koji prikazuje broj poseta po mesecima i zasnovan je na osnovu ggplot2 biblioteke.

 line chart google analytics r programming

 

Histogram

Distribucija poseta za prethodno definisani period je u nastavku.

google analytics histogram plot r

 Scatter plot

Grafički prikaz datuma i poseta u periodu od 9 meseci.

google analytics r api scatter plot

Scatter plot point size

google analytics api r scatter plot point

 

Scatter plot + trend

Kako bismo imali uvid i u trend tokom određenog vremenskog perioda na scatter plotu dodaćemo i liniju za trend.

google analytics r api scatter trend line

 Box plot

U primeru je vizualizacija distribucije saobraćaja tokom dana u nedelji. Da bi se dobio ovaj grafikon, biće potrebno da se napiše poseban upit koji će povući druge podatke koji se odnose pre svega na dane u nedelji. Treba napomenuti da Google Analytics API za dimenziju dayOfWeek ima sledeće značenje:

  • 0-Sunday
  • 1-Monday
  • 2-Tuesday
  • 3-Wednesday
  • 4-Thursday
  • 5-Friday
  • 6-Saturday

google analytics r api box plot

Poređenje po uređajima

Kako bi analizirali posetu po uređaju potrebno je da napišemo novi upit koji će povući podatake koji se tiču tipa uređaja, datuma i poseta (sessions).

Sa ovim grafičkim prikazom možemo uvideti koliko je poseta bilo i preko kog tipa uređaja u željenom vremenskom periodu.

Kao što se vidi i na chart-u, korisnici su definitivno više posećivali sajt preko desktop-a.

google analytics r api bar chart device

 

Heatmaps

Svi vole heatmaps zar ne? U prilogu je jedan konkretan primer prikaza broja pregledanih stranica (pageviews) po danima u nedelji i satima.

heatmap google analytics day of week

 

Zaključak

Verujem da ako ste došli do kraja tutorijala da ste uspeli uspešno da ispratite sve korake i da kreirate vizualizacije koje se tiču vaših podataka iz Google analitike. Za dodatna pitanja i predloge budite slobodni da me kontaktirate. Svakako ću se truditi da u narednom periodu ovaj post obogatim i dodatnim primerima.

Srećno analiziranje!

Leave a Comment

Your email address will not be published.