【続】データベースを扱うための基礎の基礎—身近なデータから学ぼう
初めまして、今回よりPOWER BI FORUMのコラムを担当して参ります、横井羽衣子です。
このコラムでは、Power BIを業務やビジネスデータの分析に使い始めたオフィスユーザーの方々を対象に、さまざまなテーマでマイクロソフトから情報を提供してゆければと考えております。
さて前回までは、「分析に使いづらいデータ」「使いやすいデータ」の違いについて紹介しました。前回までのコラムは、以下をご覧ください。
今回はその続編として、ふたたび「使いづらいデータ」からデータベースの基礎を考えてみます。
ΣSUMを付ける場所は?
少しおさらいになりますが、データがテーブル表やマトリクス表では、1行に1かたまりの情報がまとめられる「1行1レコード」が基本です。
図1:一般的なテーブル表
この際、数値があれば、合計のΣSUMのつく場所は一覧の下が基本です。図1の場合は、合計値がつくと図2のようになります。
図2:テーブルに合計値を表示
このルールを覚えると、図3のように合計値が横に付いている表は、ちょっとおかしいかな? と一見して気づくようになれると思います。
図3:1行1レコードになっていないイレギュラーなテーブル表
では続いて、これらの図から読み取れる、もう1つの困った点について触れていきます。
1つの項目に複数の内容が混在
図2、図3共に言えることですが、この表で分析する際、困るところはどこでしょうか。
販売商品の細目に注目してみると「おすすめ1」「おすすめ2」「その他」とあります。商品を具体的な商品名ではなく、こういった細目で分類しているケースは、現実でも珍しくありません。
たとえば、ボタンタッチ式のレジや、注文取りに使う専用端末などを使っている飲食店や販売店でよくあります。みなさんも食事に出かけた際や買い物に行った際に、タッチ式端末などで目にしたことがあると思います。
ここでの問題は、「おすすめ1」に該当する商品が日や週によって変わってしまう、分類が難しい商品を「その他」にまとめてしまうため、分析を行うタイミングで「おすすめ1」は何だったか?「その他」とは何だったか?が分からなくなってしまうということです。
それでは、このケースの問題点について具体的にご説明しましょう。
問題点1:「おすすめ1」「おすすめ2」に複数の商品が混在している
問題点の1つ目は、先にも述べたとおり、「おすすめ1」「おすすめ2」などの細目に該当する商品が変わってしまうことです。
このケースでは、「おすすめ1」の詳細データがどこにも存在しないため、販売数の分析を行う際、詳細の分析が行えないという点が問題です。
実際に相談があったエピソードですが、ある飲食店で、売上分析を行うことになった際、「おすすめ1」としてまとめられている売上に、複数の商品が混在していることが判明しました。注文受付の際に、お店の週替わりメニューを端末の「おすすめ1」「おすすめ2」というボタンを用いて処理。金額は一定でしたが、商品内容は週変わりメニューなので毎週変わっているということでした。
これでは月毎、年毎と売上データを蓄積しても何が売れていたのか、正確な分析はできません…。
もしも日付と突き合わせて「おすすめ1」の変遷内容を確認できる、「おすすめ1メニュー・マスター」のようなテーブルが別途存在すればよいですが、このケースではそういったものが無かったため、集計内容を詳細分析することができませんでした。
問題点2:イレギュラーなものは「その他」にまとめている
問題点の2つ目は、レギュラー商品ではないものを「その他」という項目にまとめていること。
「新商品を入荷したけれどデータベースに該当する項目がない」ケースや、「季節商品なので項目名は記録なしでまとめた」などといったケースです。スーパーマーケットのように大量の商品を扱っていたり、青果物などを扱っていたりする場合によく見られます。
このようなケースに共通する問題は「社内に売上データはあるが、集計・分析を行うために必要なデータが欠けている/扱いづらい」ということです。決して設計ミスということではなく、本来POSや売上記録のシステムを作ったときの仕様では、ここ数年で盛り上がってきたダイナミックなデータ分析を社内で行う予定がなかったのが理由でしょう。
また、データの細かさ以上に、現場のスタッフの操作性やスピードを優先しなければならなかった、ということも想像できます。
改善方法としては、「おすすめ1」「その他」の詳細を参照できるようなテーブルを、システムに新しく加えるなどの方法が考えられます。
しかし社内の基幹にかかわるシステムを、すぐに誰でも直せるとはいかないでしょうが、「社内で持っているデータで営業分析をしてみたいのに、うまくいかない」といったときに、自分のスキルの問題なのか、提供されたデータ形式の問題なのか、はたまた根本的な別の原因があるのかを確認し、理解する必要はあるでしょう。
本来1つである項目が複数の表現がある場合
現場にあるデータは、いま紹介したケースとは逆の例もあります。図4を示しましょう。
図4:このデータの問題は何か?
このデータの問題点はどこにあるでしょうか。
ひらがなの「とちおとめ」とカタカナの「トチオトメ」と表記がブレてしまっているため、分析の際に同一ブランドとして集計することができません。
また、これが青果物店の売上データだった場合、一段上の階層で「とちおとめ」や「あまおう」が「いちご」であることがわからないと困るケースも出てくるでしょう。このようなデータのブレを修正する作業を、データベースの世界では「データクレンジング」と言います。
修正方法の例を図5に挙げてみましょう。
図5:ブランド名を商品名で統一する
また、必要になったときに製品名を参照可能な修正方法としては、図6のような修正方法があります。
図6:「いちご」カテゴリーのID管理をするテーブル表「いちごマスター」を用意することで管理しやすくなりました。
図6では、商品売上げのテーブルではIDを付与しているので、必要となったときはイチゴの銘柄を参照しながら、いちごの売上が管理できる仕組みです。
もちろん、この例は極端に単純化したものです。何千・何万という品を扱う実際のデータベースでは、より巧妙にカテゴリーマスターIDを設計しておく必要がありますが企業の売上データも、基本的にはこのような考え方に基づいて、リレーションし管理されています。ID管理は、複雑なデータベースを管理しやすくするための基本の考え方です。
使いやすいデータにするためのPower BI操作のスキルを持つには?
個々人のオペレーターやシステム担当者が社内のデータ分析に関わることになった際、上で説明したような問題にめぐりあう可能性は、かなり高いのではないかと思います。
SIerやパートナー業者と可視化のゴールを共有
ここまでご紹介してきたケースは、多くの会社で起こっている・起こりうる問題だと思います。社内の経営情報が一切データ化されていない企業は、ほとんどないと思いますが、その一方で、データ資産の在り方はさまざまです。
目の前に見えている問題が整理できたとしても、具体的に改善するには、さまざまな部署との調整が必要になったり、システムを変更したりする必要があるかもしれません。
社内でデータの可視化や経営の見える化を遂行する際、権限者や担当者がデータベースの基礎を知っていることは、パートナーとなるSIerに相談したり、プロジェクトを遂行したりする上で、とても役に立つと思います。
単純な修正ならばDAXを使う手も
Power BIは、データが使いやすい状態で用意されている前提で、簡単な操作で集計、可視化が行えるというツールですから、今回紹介したようなデータの在り方を根本的に修正する、マスターを作成し直すといった作業は、データ分析者の作業担当外になります。
ただ、「半角の文字を全角に統一」「無駄なスペースを削除」などの比較的簡単な修正であれば、クエリを読み込んだあとPower BIの関数DAXを使って処理できるケースもあります。
DAXについては、まだ日本語の資料が少ないですが、「Power BI独習書」がバージョンアップし、DAXの内容も詳しくなりましたので、興味のある方はぜひ以下からご覧ください。
https://www.microsoft.com/ja-jp/cloud-platform/Solutions-BI-Data-Analytics.aspx
今回は、前回に引き続き、ふだん目にしているExcelの集計を見つめ直すことでデータベースにおけるデータの準備方法について考えてみました。Power BIを活用されるOfficeユーザーの方々の参考になれば、幸いです。