R から APIで Googleアナリティクスのデータを引っ張ってくるパッケージ、RGoogleAnalytics を使えるようにするまでのメモです。
パッケージのインストールは
install.packages("RGoogleAnalytics")
でいけます。
まずは https://console.developers.google.com/projectにアクセス
プロジェクトを作成
プロジェクト名を適当に入力して「GoogleAPIを利用する」をクリック
「Analytics API」 を選んで
「APIを呼び出す場所」は「その他の UI」、「アクセスするデータの種類」は「ユーザーデータ」を選択
認証情報を選んで
「クライアント ID」と「クライアント シークレット」をコピー
R 上で「クライアント ID」と「クライアント シークレット」を入力して Auth すると oauth_token を取得できます。
library(RGoogleAnalytics) id <-"***" sec <-"***" oauth_token <- Auth(id,sec)
Googleアナリティクスデータの表示を許可してください。
入手した token は以下のようにセーブしておくと、次回以降使い回せます。
save(oauth_token, file="oauth_token") load("oauth_token")#次回以降
ためしに適当なデータを取得してみます。
library(RGoogleAnalytics) profiles <- GetProfiles(oauth_token)
GetProfiles でプロファイルの ID を取得できます。
クエリは例えば以下のように作成する
query.list <- Init(start.date ="2015-11-01", end.date ="2015-11-30", dimensions ="ga:date", metrics ="ga:sessions", max.results =1000, table.id = paste("ga",profiles[1,1],sep=":")) ga.query <- QueryBuilder(query.list)#上はクエリを作成しただけなので GetReportData でデータを取得 ga.df <- GetReportData(ga.query, oauth_token)
とりあえずプロット
library(ggplot2) ggplot(ga.df,aes(x=1:nrow(ga.df),y=sessions))+ geom_line()+ ylim(c(0,max(ga.df$sessions)))
クエリ作成方法については、ちょっと古いけど、
R から API で Google アナリティクスのデータを読むこめるパッケージ, RGoogleAnalytics のクエリ作成方法 - 廿TT
が参考になると思います。