R言語を使ってGoogle Analyticsのデータを解析しよう!R言語実践編 | SiTest (サイテスト) ブログ

メニューボタン閉じるボタン

R言語を使ってGoogle Analyticsのデータを解析しよう!R言語実践編

こんにちは、プロダクト開発チームの牧です。

R言語基礎入門R言語グラフ入門とR言語の入門記事を書いてきましたが、今回はようやく実践編ということでGoogle Analyticsからデータを取得しR言語で解析していきたいと思います。

事前準備

R言語の実行環境としてはRStusioを使用します。
また、Google Analyticsからデータを取得するためのライブラリは沢山あるのですが、
今回は比較的使いやすい「RGA」というライブラリを使用します。

インストールするにはRStudioのコンソール画面で、

install.packages("RGA")

を実行すればインストール完了です。

次にデータを取得したいAnalyticsのビューIDを確認しましょう。
「管理」のビューページから下記のようにビューIDを確認することができます。

早速作ってみよう

それではRGAライブラリを使用してGoogle Analytics からデータを取得してみましょう。

# Include Library
library(RGA)
library(dplyr)

# GA OAuth
authorize()

# Get profile
prof_list <- list_profiles() %>%
  dplyr::filter(id == {{ViewID}})
prof_list$id # GA profile id

# Get Sessions Data
s.data <- get_ga(profileId = prof_list$id,
       start.date = "2017-01-01",
       end.date = "2017-03-31",
       metrics = "ga:sessions",
       dimensions = "ga:date")
# Get Pvs Data
p.data <- get_ga(profileId = prof_list$id,
       start.date = "2017-01-01",
       end.date = "2017-03-31",
       metrics = "ga:pageviews",
       dimensions = "ga:date")

# Plot
plot(as.Date(s.data$date), s.data$sessions, type = "l", ylim = c(0, 13000), ann = FALSE)
par(new=T)
plot(as.Date(p.data$date), p.data$pageviews, type = "l", col = "blue", ylim = c(0, 13000), ann = FALSE)

ライブラリを読み込み、authorize関数でGoogleと連携します。
list_profiles関数は連携したアカウントに紐付いているAnalyticsビューの一覧を取得することが出来ますので、dplyrのfilter関数を用いて目的のビューを取り出しています。
グラフは、2017/01/01〜2017/03/31までの期間で日別のセッション数とPV数を描画するようにしてみました。
実行すると下記のようなグラフが描画されます。
get_ga関数に渡す引数はAnalytics APIで提供されているものと同じですので、
Analytics APIを使用されたことがある方は簡単に使えるようになるかと思います。

まとめ

今回はGoogle Analyticsからデータを取得して簡単なグラフを作成してみました。
knitrなどのファイル保存ライブラリを使用することにより、取得したデータを用いてPDFなどにレポーティングすることも出来ます。
Google Analyticsはよく使用される方が多いと思いますので、Rを使って週次や月次のタイミングで簡単にレポーティング出来るようにしてみてはいかがでしょうか。