読者です 読者をやめる 読者になる 読者になる

廿TT

譬如水怙牛過窓櫺 頭角四蹄都過了 因甚麼尾巴過不得

RGoogleAnalytics の使い方(Version 0.1.1)

R から APIGoogle アナリティクスのデータを引っ張ってくるパッケージ、RGoogleAnalytics を使えるようにするまでのメモです。

パッケージのインストールは

install.packages("RGoogleAnalytics")

でいけます。

まずは https://console.developers.google.com/project にアクセス

f:id:abrahamcow:20151225182503p:plain

プロジェクトを作成

f:id:abrahamcow:20151225182535p:plain

プロジェクト名を適当に入力して「Google API を利用する」をクリック

f:id:abrahamcow:20151225182904p:plain

「Analytics API」 を選んで

f:id:abrahamcow:20151225183058p:plain

API を呼び出す場所」は「その他の UI」、「アクセスするデータの種類」は「ユーザーデータ」を選択

f:id:abrahamcow:20151225183400p:plain

認証情報を選んで

f:id:abrahamcow:20151225183423p:plain

「クライアント ID」と「クライアント シークレット」をコピー

R 上で「クライアント ID」と「クライアント シークレット」を入力して Auth すると oauth_token を取得できます。

library(RGoogleAnalytics)
id <- "***"
sec <- "***"
oauth_token <- Auth(id,sec)

f:id:abrahamcow:20151225182808p:plain

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)))

f:id:abrahamcow:20151225184533p:plain

クエリ作成方法については、ちょっと古いけど、

R から API で Google アナリティクスのデータを読むこめるパッケージ, RGoogleAnalytics のクエリ作成方法 - 廿TT

が参考になると思います。