利益管理のためのデータ可視化 技術者にできる事は何か?

データ可視化とは何を指し、どんな課題を解決するか?

「自社のもつ売上・コスト等のデータを利活用したい」というニーズは、各企業のICT導入が進み、そのあり方もオンプレミス(自社サーバーでの保有)からクラウドサービス利用に移っていることにより、日増しに強まっています。 ビジネスニーズを満たすシステム、例えばBIツールの開発を各社が競う中、システム開発を行うエンジニア個人に求められる技術領域は様々です。 そんな背景を踏まえて今回は、データ利活用の前提として欠かせない「データ可視化」という技術分野について、簡単にご紹介してみたいと思います。

データ可視化とは?

データ可視化はもともと科学技術分野において発祥した技術であり、与えられたデータから 自動的に「見やすい図示」を出力する アルゴリズム(ないしシステム)を指します。その対象となるデータは、数表として与えられるもの(多次元ベクトル)、ネットワークの形で与えられるもの(データ構造としてのグラフ)など様々です。 様々な「可視化技術」が科学技術分野からビジネスの現場へ輸入され、ビジネスシーンでも盛んに利用されるようになってきています。

データ可視化の方法論

データを見やすくし、ビジネスの現状分析や意思決定に活用するという観点からは、 「何を可視化するのか?」がもっとも大切です。

また、一つのデータに対して可視化の方法は複数ありますので、「ビジネスを熟知している発注者」と「技術を熟知しているエンジニア」が知恵を出し合い、 「どのように可視化するのか?」を決定する必要があります。 そこでは「目的」と「手段」を切り分けて、議論を進めることが肝心です。

言い換えると、データ可視化のためのシステムを実装する際は、

  1. どんなデータから可視化するのか
  2. 何を目的として可視化するのか
  3. どんな計算(もしくは数理)に基づき可視化するのか

を明らかにして機能実装する必要がありますので、魔法のように「どんなデータでも図示出来る」システムはありえません。市販のBIツールは多くのニーズにフィットするよう設計されていますが、上記1・2・3のいずれかのニーズにマッチしないことがしばしばです。

アルタスファイブでは、販売管理システムの開発をフルスクラッチ(全て自社開発)で行っているので、ニーズに合わせた可視化の手法をクライアントごとに設計しており、個別のニーズに応えるための知見を蓄積しています。 今回はその見地に立って、「データ可視化の事例と有用性」について、まとめてみたいと思います。

販売管理データを可視化するプログラムを提供(本記事のゴール)

一般企業の方が思う、「身近にある可視化したいデータ」の例として、売上など販売管理上の情報が挙げられるでしょう。 数値を見やすく表やグラフ等で図示することはもちろん、それら数値の含意も明らかにしたいところです。

決算説明会等で用いる外部資料はもちろんの事、企業内での経営方針策定会議などで、自社の販売状況に関する見やすい資料があることは、議論を大きく推進します。「見やすい図を作る」ために、少なからぬ人的リソースとコミュニケーションコストを割いている企業さんは少なくないのではないでしょうか。 以降、「販売管理データの可視化」という具体例を用いて、データ可視化の事例を紹介していきます。

なお、以降、データ可視化の簡便性・柔軟性に強みのあるプログラミング言語「R」のコードを併記します。 「この分析ならExcelでも出来るじゃん」という内容ではありますが、「可視化ニーズに応じてエンジニアがプログラムを書く」という流れを非エンジニアの方に実感していただくためのものですので、ご容赦ください。

今回は、下記のような売上に関する一次元データ(きわめて単純な例)を元に、可視化を進めていきます。

https://github.com/msato-ok/R_visualization/blob/master/data/sales.csv

Tips 1: 「変動の大きさ」を明示してデータを可視化してみよう

例えば売上情報を図示する際、折れ線グラフを使う場合は多いと思います。しかし各年の売上情報をただ図示しただけのグラフからは、重要な要素を見落としてしまったり、非本質的でない要素に目を奪われてしまうこともあるのです。

上記の図は、「アイスクリーム屋さん」という小売業種を想定し、日次平均売上を月ごとに図示したものです。例えば8月の数値は、「8月1日〜8月31日の平均において、1日約120,000円売り上げている」ことを示しています。 アイスクリーム屋さんなので、気温の高い夏場の売上が大きく、冬場は売上が落ち込む傾向があることがわかります。

上図を決算説明会の場で用いるとしたとき、ある株主が「7月よりも8月の方が平均気温が高いにもかかわらず、売上が下がっている」 という事実に着目したとしましょう。「なぜ8月の売上は下がったのか?」という質疑に少なからぬ時間を取られてしまうかもしれませんが、上図だけでその結論を導くことは難しく、貴重な時間を費やすのは無駄というものでしょう。

一方で、決算説明会の資料として、下図を採用した場合はどうでしょうか。

上図は、「各月の日次売上の平均値および、各月の日次売上の95%が収まる範囲」を図示したものです。それぞれのノードから出ているひげの長さが、日次売上の「バラつきの大きさ」を示しているのですね。 この図を見ると、7月や8月といった気温の高い時期は日次のバラつきが大きく、1月や2月といった気温の低い時期はバラつきが小さくなることが分かります。 また同時に、7月や8月の日次売上の変動の大きさに比べれば、平均売上の差異は非常に小さく、議論の対象とするには些細すぎるということが分かります。先の株主にはこの図を見せておけば、「8月の売上が7月より低かったのはたまたま現れた傾向で、来年になれば逆転する可能性も高い」という理屈で納得してもらえる可能性がありそうですね。

ここで上図(ひげ付きのもの)は、前述の日次売上データを元に、下記Rコードで図示したものです。

Tips 2: 外部APIを利用してデータの次元を増やしてみる

先ほど、「売上と気温の値に相関が見られる」ということに言及しましたが、 企業内のデータではなくても、各地の日次最高気温などのデータを資料内に盛り込むことで、より示唆に富んだ図示が出来る可能性があります。 実は、各地域の日次最高気温などのデータは、気象情報APIと呼ばれるプログラム群を用いることで自動取得が可能なのです。例えば下記のようなAPIが有名です。

APIを利用すれば、一種類のデータのみならず、自社売上に関係しそうなあらゆる外部データを、人的なランニングコストをかけずに利用出来るようになります。 もちろん、そのためにはAPI利用のためのプラットフォームを構築しておくことが必要ですので、初期費用と効果を天秤にかける必要がありますが、「どんな外部データが自社の売上に影響を与えうるか」議論しておくことは、決して損にはならないでしょう。 下図は、自社の売上データに、各月の最高気温の平均値を重ねたものです。

(ここでは外部APIを利用せず、シミュレーションで発生させた下記の気温データを用いています。あしからず。)

上図では、売上と気温の関係性が、より明確に見えるようになりました。

Tips 3: 別の角度からデータを眺めてみる(散布図と回帰分析を例に)

先ほどの図では、月(時間経過)を横軸に取った折れ線グラフ上に、自社の売上と気温を図示するという素朴な方法で、両者の傾向をつかみました。 一方で、下図は別の角度から、両者の傾向を図示しています。

上図は365日間のデータについて、横軸を気温、縦軸を売上(円)として、散布図を描いたものです。 「気温が上がると売上が上がる」というデータの傾向が分かりやすく可視化されていますね。

なお、散布図は気温を含むデータを基に、下記コードによって出力しました。

さて、気温と売上の関係をよりハッキリと、数値化された形で知りたいという方もおられると思います。そんな場合は、「回帰分析」と呼ばれる統計分析を用いると、より具体的でインパクトのある数字を求めることが出来ます。

回帰分析とは、ある変数が別の変数の影響を受けて値を決めるとき、データを最もよく説明するような数値同士の関係性を見つけ出す分析です。 前提条件や解析面については今後のブログで紹介することとし、今回は省略しますが、一言で言えば「上図における気温と売上の関係性をもっともよく説明するような直線を引く」ための分析手法です。

そして、上図で引いた直線の傾きを取ることで、「気温が1度上がると売上がいくら高まるのか?」を計算することが出来るのです(上記の例では**円)。

この情報は当該データを持つアイスクリーム屋さんにとっては重要な経営情報と言えるでしょう。なぜならこの値は、冷夏の影響で8月の最高気温が1℃下がった時、期待値において月間売上がいくら落ちるかを明確に説明する数値 なのです。 この数値を表に出すかどうかはともかく、経営者が意思決定の上で参照出来る数値としては、大変ありがたいのではないかと考えられます。

より高度なデータ可視化へ(地理情報や時刻情報の活用)

ここまでの可視化は、単純な売上の1次元データと、そこに気温という次元を付加した2次元データのみで行ってきました。 もしこのアイスクリーム屋さんが全国各地にフランチャイズを持っている場合、地理情報という次元を重ねることができます。 また、日次データよりも詳細な時刻情報という次元を重ねるという選択肢もあるでしょう。 ここまで来ると立派に「データ可視化」分野の課題になるように思います。今回はそこまで踏み込まずに(筆者が業務の傍らで書けるキャパシティを超えてしまうので…)、より基本的な可視化や分析の手法を紹介させて頂きました。

「データ可視化」の定義に関するおさらい(本記事のまとめ)

今回の図示について注目頂きたい点は、データの可視化を、プログラムによって完全に自動化した という点です。今回は単一の売上データに対し、データそのものには一切人間の手を加えず、コードの実行だけで5つの図を出力することができました(APIを利用しての気温データ取得を前提とする場合)。 これほど単純な例でいくつもの可視化例があるのですから、奥の深い分野だということはご理解頂けるのではないでしょうか。

今回はエンジニアリングとあまり縁の無い方にも広く記事を読んで頂けるよう、特にビジネスに近い例を紹介させて頂きました。 ビジネスシーンで課題を抱える方に、本記事が何かのお役に立てば幸いです。

最後に – 御社のデータ可視化をアルタスファイブにお任せ頂けませんか?

一般企業のデータ可視化にあたっては、Tableau(タブロー)などのBIツール導入も選択肢に入りますが、既存データベースとの繋ぎこみや、活用方針の策定などにもコストがかかってしまいます。 既成システムについて「これは出来る」「これは出来ない」という調査をするのも大変ですし、既製システムでは出来ない限界を知るうちに、本当にやりたいことを諦めてしまうということもあるでしょう。

それよりは、データ可視化機能を含む販売管理システムを、一からスピーディに開発出来る弊社に任せてみてはいかがでしょうか。

フォームからお問い合わせ頂ければ、実際に販売管理システムの開発プロジェクトを統括するマスター開発者が、御社の課題をヒアリングさせて頂きます。相談は無料ですので、お気軽にお問い合わせください。

また、本記事をお読みになり、データ可視化領域に興味関心が湧いたエンジニアさんからの採用応募もお待ちしております。

最近の記事タグ

関連記事

\(^▽^*) 私たちと一緒に働いてみませんか? (*^▽^)/

少しでも興味をお持ちいただけたら、お気軽に、お問い合わせください。

採用応募受付へ

(採用応募じゃなく、ただ、会ってみたいという方も、大歓迎です。)