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

廿TT

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

Google アナリティクスの「コンバージョン経路」レポートより始点と終点の図示(R でアトリビューション分析 2)

この記事の記述は若干古く、コードもあまりきれいじゃないので、

abrahamcow.hatenablog.com

のほうをご覧ください。

目的

f:id:abrahamcow:20150210133522p:plain

Google アナリティクスの「コンバージョン経路のレポート」からはこんな感じのレポートが見れます。

MCF チャネル グループの経路 コンバージョン数
オーガニック検索 > ノーリファラ 22
オーガニック検索 > ノーリファラー > ノーリファラ 9

このコンバージョン経路の中で、特に注目したいのは、経路の始点と終点じゃないかと思います。

終点はユーザーがコンバージョンに至ったセッションでの訪問経路です。

始点というのはコンバージョンに至ったセッションから、巻き戻して何日前かにサイトに訪れた際の訪問経路です。

(より正確な説明は マルチチャネルについて - アナリティクス ヘルプ を参照してください)

始点はユーザーがサイトに興味を持ったきっかけとなったセッションと解釈できます。

コンバージョン経路の途中経過は捨てて、始点と終点だけを可視化してみます。

R による実践

データは Analytics すべてのウェブサイトのデータ コンバージョン経路 20141101-20150131.csv · GitHub に置いておきます。

これを R で読み込み、経路を始点と終点だけに切り捨ててコンバージョン数を集計します。

dat1 <- read.csv("~/Downloads/Analytics\ すべてのウェブサイトのデータ\ コンバージョン経路\ 20141101-20150131.csv",
                 skip=6,stringsAsFactors =FALSE)
#head(dat1)
sep <-strsplit(dat1[,1]," > ")
#head(sep)
unq <-unique(unlist(sep))
len <-length(sep)
dim1 <- length(unq)
mat<- matrix(0,nrow=dim1,ncol=dim1)
lenv <- sapply(sep,length)

for(i in 1:len){
  mat[sep[[i]][1] == unq, sep[[i]][lenv[i]] == unq] <-
    mat[sep[[i]][1] == unq, sep[[i]][lenv[i]] == unq] + dat1[i,2]
}

以上で集計は終わりましたが、今回の可視化に使おうとしている transitionPlot という関数が日本語苦手みたいなので、集計表の行の名前と列の名前は手入力します。

#チャネルの名前(日本語)
> unq
[1] "オーガニック検索"        "ノーリファラー"          "ソーシャル ネットワーク"
[4] "参照元サイト"            "(使用できません)" 
rownames(mat) <- c("organic","no referer","social","referral","other")
colnames(mat) <- c("organic","no referer","social","referral","other")

遷移行列はこんな風になります。

> mat
           organic no referer social referral other
organic         19         56      6        2     0
no referer       4         34      6        1     1
social           5         29     24        3     5
referral         2         13      8       13     1
other            3          6      2        2     5

ついでにそれぞれの色も指定。

cols <- c("forestgreen","orange2","cornflowerblue","royalblue","tomato")

プロット。

library(Gmisc)
transitionPlot(tab1,
 fill_start_box=cols, #始点の色
 fill_end_box=cols) #終点の色

f:id:abrahamcow:20150214051756p:plain

左側が始点となったセッション、右側が終点となったセッションです。

このブログは特に特定の商品を売るとかの目的がないため、4ページ以上の閲覧があったセッションをコンバージョンとしてカウントしています。

organic(自然検索)でサイトに接触して、no referer(ブックマークなどからの直接訪問を含む)でコンバージョンに至るケースが多いのは、納得できます。

SEOとかやってる方だったらこれはうれしい結果ではないでしょうか。

また広告運用とかやってる方だったら、広告の間接効果をおおまかに把握するのに使えると思います。

あとは、検索流入における指名系ブランドワードの扱いとカスタマージャーニー分析|コラム アユダンテ株式会社 のページのように、検索キーワードを分類して同じような図を書いてみてもおもしろいかもしれません。

参考サイト

transitionPlot 関数の使いかたは下記ページを参照しました。

インストール方法などもこのページを参考にされるとよいと思います。


RのtransitionPlot関数を用いた遷移図の作成 - RとPythonによるデータマイニング

transitionPlot 関数、注文つけたくなるところはいくつかありますが、華やかな図が書けますね。

アマゾン・アフィリエイトのコーナー

本文とはまったく関係ありませんが、最近読んでおもしろかったラノベライトノベル)です。

紫色のクオリア (電撃文庫)

紫色のクオリア (電撃文庫)

序盤、女子中学生どうしのゆるいいちゃいちゃが4コママンガ的な断章形式で続く。ある時その日常に事件が! ……みたいな話かと思いきや、いきなりワイドスクリーン・バロック

短編に書き下ろしを加えて長編にしたせいでこんな構成になったのかな。

例えるなら(シュタインズ・ゲート+虎よ、虎よ!)÷2? 電話の相手と入れ替わるとことか、絵になる。

幕切れもいいし、クオリアの新解釈もおもしろかった。