「思いつき」から始めるデータ分析〜技術ブログ編〜

このエントリーをはてなブックマークに追加
こんにちわ。ishikawaです。
みなさん、データ分析してますか〜?


データ分析というと、
「難しそう」
「専門的な知識が必要なため、学校に通わないとできない」
「少なくとも数年は業務経験を積まないといけない」
というイメージがあると思います。

私もデータ分析を実際にやってみるまではそう思っていましたが、「思いつき」からデータ分析を始めてみると、かなり敷居低く始められることがわかりました。

データ分析のはじめの一歩、例えば、仕事で企画・提案をするためにある程度根拠のある資料を提出しなければならないときなど、試しにこれから説明する手順で実際にやってみて、雰囲気をつかんでみるのもいいかもしれません。

最初から完璧にやることを目指すと、結局何もできずに終わってしまったなんて経験あるかと思います。はじめから100パーセントを目指すのではなく、自分のできることから始めるのがいいのではないでしょうか。

そう、スターウォーズシリーズに登場するのヨーダのあの名言、
「No! Try not. Do. Or do not.」
で、今からデータ分析始めてみましょう。


経緯

弊社では、昨年度からその年に投稿されたブログのPV数のランキング上位5名はタダでお寿司が食べられることになっています。以下がランキングです。

<2015年シャノン技術ブログランキング>
  1. Google のバグ予測アルゴリズムとbugspotsの導入
    tsucchi 3995PV
  2. そんな自動化で大丈夫?『システム自動化標準ガイド』で自動テストを点検しよう!
    chappie 3085PV
  3. 小さな会社がScalaでマイクロサービスを始めて良かった3つのこと
    ishikawa 3073PV
  4. ドキュメントのレガシー化、忘れていませんか?APIマニュアルWEB化までの経緯
    kzhirata 2840PV
  5. bugspotsを3か月くらい運用してみた話
    tsucchi 1710PV
昨年度はお寿司制度を導入したこともあり、今まで以上に投稿数が多い年でした。しかし、ランキングをみていると、なんとなく全体的に例年よりPV数が落ち込んでいるのではないかという気がしました。

ブログは「採用」目的も兼ねているので、PV数が落ち込むと、採用にくる母集団の減少につながりかねません。また、技術会社としてブログを読んでくれている方に価値あるものを提供できているのかという疑問にもつながります。

ただ、「PV数の減少」は個人的な感覚でしかなく、何か根拠があるものではありませんでした。何も数字やデータをださないまま、改善はできないので、実際にブログデータを分析してみることにしました。


1.「思いつき」から始めてみよう

以前の私はデータ分析について
  • とにかくデータを集める
  • とりあえずグラフ化してみる
  • ひたすら分析手法の知識を深める
という考えでした。

もちろんこれらの習得は必要ですし、大切なことだとは思うのですが、初心者の私にとってはとてもハードルの高いもので、何年かかったら分析を始められるのかわかりません。また、これまでの経験として膨大なデータを前に途方にくれ、とりあえずグラフにしてみて満足して、当初の目的がなんだったか忘れることも多くありました。そんな状況の中、出会ったのが「仮説アプローチ」というものです。

「仮説アプローチ」について

参考にした「それ、根拠あるの?と言わせないデータ・統計分析ができる本」という本の中に「仮説アプローチ」、つまり最終的な目的をはっきりさせ、目的に沿った仮説をデータを使って客観的に確認(検証)していく方法が書かれていました。

何か問題が起こった時に、私たちは「どこに問題があるのか?」考え、いくつか思い当たる原因について考えます。その考えた内容は「仮説」であり、「思いつき」でもあるため、妥当性を確認する必要があります。仮説をたてて、その仮説が本当に正しいのかどうかを様々なデータやロジックを使って確認する手法、それが「仮説アプローチ」です。

※仮説を立てることは、無駄な分析を避けることができ、目的が明確になり、複数の仮説に対する分析結果を組み合わせることにより、説得力のある答えを引き出すことにつながるといった良い点があります。
ただし、見えない課題を見逃すリスクや仮説を考えた人の思い込みやバイアスに左右されるといったリスクもあるため、注意が必要になります。

「目的」→「仮説」→「手段」を図式化

以下は、今回のデータ分析の目的と仮説、そして、手段を図にしたものです。


2. データ分析してみよう

では早速、データを使って仮説を検証してみましょう

仮説①:そもそもPV数減っていないのでは?

下記は年ごとのPV数をグラフ化したものです。


私たちはたくさんの数値が並んだデータを前にした時、まずは全体の合計値求めて、それから平均値を割り出し比較したりしますが、それだけでは不十分です。平均からはデータの「バラツキ」具合が見えないからです。そのバラツキを表現するのに便利なのが上記の箱ヒゲ図になります。

表には「四分位数」といった聞きなれない言葉があるかと思いますが、これは簡単に言うと、データを小さい順から並べて4等分にした境界にある値です。第1四分位数は1/4、第3四分位数は3/4の位置にあたる数値です。

ブログをはじめた2011年、2012年に比べて、箱の位置が低くまた、高さがありません。ブログを投稿してからの経過年数の違いがあるといえ、PV数が全体的に低く、バラツキもほとんどないことがこの図からわかります。

仮説②:技術ブログのライバルが増えた

下記はこちらのWEB各社の技術ブログのサイトの総はてブ数ランキングを出している記
事を参考にし、同じ手順で、2016年2月5日現在の技術ブログランキングと弊社の順位について、調べてみたものです。また手作業でブログが開設された年度を確認し追記しています。

※ランキングにある技術ブログは上記の記事をもとに作成してあります。すべてのWEB各社の技術ブログが記載されているというわけはないのでご注意願います。

会社名ブログ開始年度はてブ数
1クラスメソッドDevelopers.IO2011134930
2クックパッドクックパッド開発者ブログ200856042
3paizapaiza開発日誌201340194
4アシアルアシアルブログ200640136
5ヤフーYahoo! JAPAN Tech Blog200835330
6ミクシィmixi Engineers' Blog200726294
7グリーGREE Engineers' Blog201025587
8カヤックtech.kayac.com200823146
9KLabDSAS開発者の部屋200620667
10はてなHatena Developer Blog201019692
11nanapinanapi TechBlog201316638
12さくらインターネットさくらのナレッジ201314277
13サイバーエージェントサイバーエージェント 公式エンジニアブログ201012596
14インフィニットループインフィニットループ技術ブログ201111930
15Livedoorlivedoor Techブログ200610513
16ハートビーツインフラエンジニアway20099259
17DMMツチノコブログ20139045
18pixivpixiv engineering blog20147492
19サイボウズCybozu Inside Out20097440
20アイレットcloudpackブログ20106655
21QiitaQiita Blog20116077
22サーバーワークスサーバーワークス エンジニアブログ20095981
23シャノンシャノン技術ブログ20115606
ランキング上位にあるブログの開始年度は弊社よりも古いものが多く、ここ数年で技術ブログのライバルが増えたわけではなさそうです。

仮説③:ある特定ユーザの拡散がなくなった

下記はGoogleAnalyticsによる投稿記事の流入元のデータになります。


流入元の大半がキーワードによる検索(=xxxxx/organic)となっており、SNS等のシェアされたURLからの流入は少ないことが見て取れます。上記からフォロワー数の多いユーザの拡散がなくなったからというわけではないことがわかります。

仮説④:投稿者の偏り、投稿内容の偏り

本当は、投稿内容をカテゴリごとに分けて、カテゴリとPV数の相関を調べたかったのですが、記事によっては多岐にわたる内容のものもあり、カテゴリに分ける作業はとても難しく断念しました。

そのため、まずは年ごとの投稿者数(投稿者の重複を省いたもの)とPV数の相関をグラフにしてみましたが、実際のところ年ごとにまとめてしまうとデータ量が少なすぎるので、相関があるとは言えません。(ごめんないさい)
2015年は投稿数が今までで一番多い年でしたが、投稿者数は少ない年だったようです。


さらに、全体のブログランキング上位(10位まで)にはどんなものがあるか調べてみました。ランキング上位にきている記事は体系的な技術・知識、プロジェクトで得られた知見等の記事が多く、長い期間読まれているものが多いようです。
タイトル投稿者投稿日付PV数
115分で始めるmonitによるサーバ監視fujya.sh2011/11/2438004
2ブラウザってどうやって動いてるの?(モダンWEBブラウザシーンの裏側)kiyoto.s2011/09/0634968
3Twitter Bootstrap+その他で「本当に」イケてるモックを作る手順benzookapi2012/09/0425328
4Jenkins, Seleniumを使った自動テストの課題とこれからの取り組みinoue2011/11/0124285
5vim で実践! コードリファクタリングkiyoto.s2011/03/1021615
6GitHub Enterpriseがやってきた!~導入編~松井信也2013/11/1313981
7tarコマンドを負荷制御(bwlimit指定)して実行する方法fujya.sh2012/08/1413636
8数百GBのPostgreSQLを一瞬でバックアップする方法Yanagisawa2011/10/1711620
9Sublime Text 2 で Play2 Scala しようikeike4432012/07/1810575
10アンドロイドアプリを作ってみよう ~開発環境準備(その1)~kashiwagi2011/04/209233


まとめ

ブログを始めた当初よりもPV数が落ちていることは実証できましたが、減少につながっている要因の追求までには至りませんでした。そのあたりはやはり分析能力、経験、数値センスが影響しており、学習不足を痛感しました。

しかし、仮説をもとに分析すすめていくと複数の視点から論理的に掘り下げていくことができ、見えてきたものも多いので、これで終わりにするのではなく、この先も試行錯誤を行い、ブログ改善につなげていけたらと思います。
(この分析をもとに、いくつか具体的な改善作業も行うことになっています)

    最後に

    文章は読み手の想像力を刺激し、行動を起こさせる発火剤のような性質を持っているものだと思います。弊社でも面接の際に技術ブログをみて、採用に応募したと言ってくれる方がかなり多くいます。

    PV数PV数とうるさく言ってきましたが、もちろんPV数がすべてではありません。PV数が高いブログが読んだ相手の心を動かすブログではないとも思っています。
    読んだ人の心を動かすブログがどんなものなのか、ブログの運営を通じてこれからも学び、考えていきたいです。


    追伸

    データ分析を始めてみると、データの収集・グラフ化するのにかなりの時間と労力を使いました。(本ブログで利用しているBloggerサービスは、投稿ごとのPV数をとるAPIがないため、今回分析するのに、同僚の力を借りて、管理画面をcasperJSを使ってスクレイピングしてデータを取得しました。また、データビジュアライズするのにデータ整形および、集計をJavascript+αでゴリゴリ書いて行っています。)

    弊社のマーケティングオートメーションツールである「SHANON MARKETING PLATFORM」は昨年度より、Tableau社と連携したマーケティングデータの可視化、分析のサービスを提供しています。
    ご興味がある方はぜひ弊社までお問い合わせください。
    次の記事
    « Prev Post
    前の記事
    Next Post »
    Related Posts Plugin for WordPress, Blogger...