2023/7/10

イントロダクション

スライス&ダイス分析は,データを切り出す(スライス),ないしはサイコロ(ダイス)を転がすようにして視点を変えるといった方法を組み合わせながらすすめるデータ分析の手法です。漠然としたデータのかたまりを分析の対象とするとき,ある程度の多面性・深度を視座に分析に取り組むことができます。

READ MORE

そうした特徴ゆえ,スライス&ダイス分析には決まった手続きがあるわけではありません。むしろ,総当たり的な手続きをとることにより“想定しない発見”を探索しうる点にこそ意義があると考えるべきでしょうか。その意味では,トライアル&エラーを前提とした手法と言えるところがあります。

もっとも,(エクセルのピボットテーブルを使用するとき)膨大なデータを対象とした総当たり的な手続きは,常識的にはむずかしいところもあるはずです。したがって,実際にはある程度のアテをつけた利用の仕方が不可欠ではあり,この点,経験に資する部分も少なくはない手法と言っていいのかもしれません。

以下,エクセルによるスライス&ダイス分析のすすめ方です。すすめ方,とはいえ趣旨が趣旨だけに千差万別なのですが,とりわけ以下の内容では具体的な操作手順といったものよりも,「思い付き」や「感覚」で見たいものを手繰っていく空気感のようなものに注視していただければ,と思います。

なお,ここでは一連の手続きを Excel 2016 で追っています。一部ボタンの配置や名称などが異なる箇所がありますが(この場合,可能であれば当該箇所に明記します),手続きそのものは,「永続ライセンス版」にいうところの Excel 2019, Excel 2013 あるいは Excel 2010,そして,「Office365版」の Excel (本頁更新時点のver.1905)とも基本的には同じです。

綾子

元データと出発点

元のデータです。リサーチサービス社のここ2年にわたる主要商品の売上データ(一部)です。取引1件につき,1つのレコードが対応しています。

このデータをスライス&ダイスしながら,データを多面的に見てみること,ないしは,何らの特徴的な事象が見られないか,探ってみることが目的です。

元データ・スライス&ダイス分析

スライス&ダイス分析の出発点はさまざまですが,ここでは設定として

先ごろ,売上データの業種別構成比を計算していたときに,ちょっと意外な結果が出て気になっていたというシチュエーションを設けておきたいと思います。

ある販売担当部員について「販促に活路を見いだすための材料がどこかに転がっていないかな」その時そんなふうに考えていた私が,意外な結果を受けてスライスダイスをしてみようと思ったとしてください。

スライス&ダイス分析の出発点

ピボット表とピボットグラフを用意する

シートの任意のデータ(ここではセルA1)をアクティブにした状態で,リボンの挿入タブテーブルグループにあるピボットテーブルの挿入ボタンをクリックします。

ピボットテーブルの作成ダイアログが開きます。ここでは正しいデータ領域がテーブル/範囲のボックスに指定されているかを確認して,問題がなければデフォルトの状態のままOKボタンをクリックします。

ピボットテーブルのフィールドリストから月-年をドラッグし,下の行ラベル枠内でドロップします12

同様にして,商品コード列ラベルに,金額枠内にドラッグ&ドロップします3

DIFFERENT VERSIONS

1 2010: [表記の違い] 行ラベル

2 2016-: 月-年へドロップすると,“時刻のグループ化” がおこなわれおよび四半期といった項目も自動的に追加されます(cf. ピボットテーブル レポートでデータをグループ化またはグループ化解除する ―"Office")。

ここでは他バージョンと話の整合性を維持するため,以下の展開においては自動で加えられるグループ化設定を解除して(ピボット表のセルA5を選択→[分析]タブ→「グループ」グループ―[グループ解除]ボタン) Step をすすめるものとします。

3 2010: [表記の違い] 列ラベル

その状態のまま,リボンの分析タブツールグループにあるピボットグラフボタンをクリックします。

DIFFERENT VERSIONS

2010: オプションタブツールグループにあるピボットグラフボタン

グラフの挿入ダイアログ・「面」グループの積み上げ面をクリックし,OKボタンをクリックします。

商品種別1~8について,ここ2年の売上の推移をグラフにすることができました(商品別売上高|時系列)。

下の図の上段がそれです。これは「積み上げ面」なので,この最上辺がこの商品グループの金額そのものの推移となります。したがってこの商品グループ全体については右下がりの傾向が明らかではあるのですが,じゃあ商品ごとの販売構成比なんかに大きな変化があったのかと言われればハッキリとしたものが見えてこないように感じます。

ということで,この場合により適切かもしれない「100%積み上げ面」に下段で変更してみましたが,こちらでも層のバランスなどで一瞥してわかるような特徴的な事象を窺うことができません。つまり,全体の減衰傾向は全商品種の影響下にありそうな気がします。

他のグラフを適用してみる

はたしてこの感覚がどれほど確かなのかいっそのこと,2時点間で単純化して眺めてみようかと思います。具体的には,ファンチャートを呼び出して,最初と最後のタイムシリーズを線分で結んでみます。

ということで,ピボット表の「合計/金額」をアクティブにした状態から,分析タブアクティブなフィールドグループのフィールドの設定をクリックしします

DIFFERENT VERSIONS

2010: オプションタブアクティブなフィールドグループのフィールドの設定ボタン

値フィールドの設定ダイアログが開きます。

計算の種類タブに切り替えたのち

計算の種類基準値に対する比率に,基準フィールド月-年に,基準アイテムJul-10(つまり当該期間のうちの最も古いもの)に設定します。

すべて設定できたら,OKボタンをクリックします。

ピボットグラフをアクティブにして,デザインタブ種類グループのグラフの変更から,元のグラフを折れ線グラフに変更します。

つづけて,グラフ内のタイムシリーズに関するフィルタ(ここでは「年-月」)から“最も古い期”と“最も新しい期”の2点のみが選択された状態に設定します。

以上の操作で,当該期間のうちの最も古い実績を基準としたファンチャートが作成されました。

中途の推移を無視したこのきわめて単純な2時点比によれば,商品種別6これはこの商品群に言う基幹種ではあるはずなんですがは,分析時点で最も大きく落ち込んだ商品となっていることが分かります(およそ50ポイント)。

また前時点比でやや増の商品種別4に関しては,直近に6の不振を埋めるためにとられた間に合わせに近いテコ入れの影響がほぼ全てであって,経過を加味すれば額面通りに受け取ることは難しそうです。

「スライス」してデータを覗く

一旦ここで流れを仕切り直したいので,先のデータを比率から観測値に戻し,グラフについてはタイムシリーズに加えたフィルタも解除しますね。


さて,これまでの作業では,「商品」の売上金額を時系列でつまり売上金額を「商品」と「時間」の2つの軸から眺めたことになります。

ある意味ではExcel最大の強みとも言えるピボット機能の直感的なUIをフル活用して,本来は,ここでいろいろな変数の対を試して俯瞰しておくべきところでしょうか。ですが,今回は十分なデータと時間をもたないので,これをとっかかりとして

先の2軸にあらたに「部門」軸を加えて,3つの視座から売上を考えてみようかななんてふうに考えています。

したがって「部門」に相当する変数を枠にドラッグ&ドロップして追加していきたいのですがなんとも思慮が至らずここではそのものズバリの変数を用意していませんでした。

ただ,当社の場合RS 部に関しては「社員コード」の先頭桁がそのまま所属部門を意味することから,これをグループ化して代用したいと思います(下図上段・中段・下段の順に)。

以上の操作によって,ピボットグラフは下図上段にかたちを変えました。

これで先の3つの軸を組み込むことができたのですが,横軸にて明らかなように,現状では3つの不連続な群の塊となっています(下図最上段: 1部の2年間の売上~2部の2年間の売上~3部の2年間の売上)。

とりあえず,この修正は後回しにしてまずは先におこなったようにして,ここでも各部門について最初と最後の2時点間で推移を単純化してみたいと考えます。その結果が,下図2段目です。

そしてこの時点でグラフにスライサーを追加して,不連続な群が一連のデータとして表示される不都合を回避していきたいと思います(下図 3・4 段目)。


「スライサー」はバージョン2010以降で利用できます。

はて,スライサーで各部門を切り替えながら見てみると,次のようなことが見えてきます。

赤線は商品種別6,黄線は商品種別4をあらわすとして先に見た商品種別6の売上金額の大幅な減少は,RS1部におけるその動向の強い影響のもとにあったことが比較的ハッキリと窺えます。また商品種別4については,たとえば RS3部ではテコ入れによっても上乗せが難しかったことが推察できます。

今おこなったように,ある軸からひとつの項目要素(ここでは「部門」軸の持つ「RS1部・2部・3部」要素)で切り出して(クローズアップして),残りの軸について観察していくこと例えるなら下の図のように1点でカットしてその断面を覗き見るようなアプローチですがこれはその様を以てスライス分析と呼ばれます。

スライス分析の考え方

ところで,先に「部門」という視点を加えたことによって,私にはその一つ下の“販売担当者”レベルでの動きにもあたらしい興味が沸いてきたりします。

「部門」を構成する個々の販売員の別に2軸に関する掘り下げをおこなっていくこうした視点の移動は,とりわけドリルダウンなんて呼ばれます。視点が階層をまたぐことから,これは同質・異質(大勢と同じか異なるか)ときにそれが大きな流れを説明したり局所的な問題を提示したりするのですがを際立たせることに秀でるアプローチだと感じるところです。

具体的な作業の前に,ええと2時点間ではこの場合あまりにも貧弱なので,下図「大きな形状」の図のように年単位の集計値を使いたいと思います。ただし,この事例の場合には,それぞれの年に内包される月次の数が異なるので,推移そのものに評価を与えることは難しいとは思います。

そうした条件のもと,スライサーによるドリルダウンを通じて,販売部員別の“折れ線”の形状に関し,同質・異質の評価を目視によって加えてみました。

これによって,あらたにいくつかの調べてみたい点が目につくこととなったのですがそうした諸点は,私が仕事の合間に進めるとして,ここでは下の図の彩色したグラフこれは私が動向を気にしている社員コード1005の人なのですが,この人のみ商品種別6の販売実績について調べてみると,下の2番目のグラフのように示されることがわかりました(積み上げ棒)。つまり,主力商品たる位置づけの商品種別6が,1005さんに限ってみれば,いささか販売機会に恵まれないように感じられるところです。

「ダイス」してデータを覗く

またまた仕切り直しをしたいので,ここでタイムシリーズのフィルタを解除しますね。


では,今度は,先に「部門」を据えた軸を他の変数「業種」と入れ替えてみようと思います。

このような解析の手続きは,眼下にサイコロを置いたとき必ず視野に入る 3 つの面つまり3つの変数が,そのサイコロを転がすことで他の異なる組み合わせとなる様にたとえてダイス分析と呼ばれます。

またそれに加え,今度は追加した「業種」と,従来からの「商品」の2軸を同時にスライスできるよう,スライサーを2つ差し入れていこうと思います。

ということで,この場合「ピボットグラフのフィールド」ウインドウにて,

  • 軸: 業種コード, 年-月
  • 凡例: 商品コード
  • 値: 合計/金額

と割り振り,かつグラフを積み上げ面に変更したのが下の1段目の図となります。

そして2段目の図でスライサーを2つ追加し

とりわけ,最初の設定で掲げた「金融」業種これは業種コード3ですがにおけるいくつかのスライスをテストして,商品コード4および6の積み上げ面グラフが返した結果を目に留めました(3段目の図)。

DIFFERENT VERSIONS

2010: [表記の違い] 軸フィールド

2010: [表記の違い] 凡例凡例フィールド

期間中のふり幅を加味すれば,強い言葉でこの業種への基幹商品に関する売上が“減った”ことを主張してもよさそうですが,一方でこれまでの推移の追い方を顧みれば,少し恣意的すぎるかなとも思うところです。

そこでこれまでと同じように,最初と最後の2時点間を結んで評価したいと思うのですが,このとき,この商品群全体について他業種との比較が必要かもしれないなと考えています。つまり「商品コード4, 6」や「業種コード3」といった括りを取り払って,1つ上の「商品群全体」「全業種」という括りでデータを観察してみたいのですが,こうした視点の動きを以て,これをとくにドリルアップと呼んだりします。

ということで,あらたにこの商品群におけるすべての商品を俎上に乗せる意味合いで,凡例枠から商品コードを外します。ここで枠の業種コード凡例枠に移し,そのうえで「業種コード」に関するフィルタを解除してしまえば,改めてすべての業種を視野に置くことができます。そしてタイムシリーズに2時点のフィルタを掛け,折れ線グラフに変更します(下図上段)。


さて,下段の図によると,業種「金融」の動向は当該区間の開始時点では3位の位置にありました。それゆえ業種「金融」はリサーチサービス社にとってある意味影響力の大きな業種と言えましたが,直近に至っては7位の位置にあることが気がかりです。これについては,何らの背景があるのかもしれません。


ただ,こうした点についてはどうやら別のデータを引いてくる必要に迫られそうです。ゆえにこのあたりを作業を終える切りのいいポイントと考えて,スライス&ダイスによる分析の手続きをひとまず完了としたいと思います。