GRANVALLEY

ブログBlog

Qlik Senseで実現する比較分析の設定方法

公開日 2017年12月11日    最終更新日 2020年3月12日

QlikViewの標準機能「並列ステート」とは

QlikViewでは、標準機能として、「並列ステート」と呼ばれる機能が備わっています。
(関連記事: 比較分析に便利な並列ステートの設定方法)

通常、リストボックスやチャートなどで、値を絞り込むと、紐づくデータのすべてがチャートに反映されてしまいますが、並列ステートを使うことによって、値を絞り込んだ時の影響範囲を制御することができます。

主な用途としては、バスケット解析などの比較分析ですが、単純な比較分析でもレポート開発をしている中で、使う頻度はそれなりに高いといった印象を持ちます。
そんな並列ステートですが、Qlik Senseでは、標準機能として「並列ステート」が備わっておりません。(※2017年12月現時点)

以前まではエクステンションを使うことによって、QlikViewと同じ並列ステート機能を使うことができていたのですが、現在はQlik SenseのUPGRADEによって、該当するエクステンションは使用不可能となってしまいました。

「並列ステート」とはいいつつも、やりたいことは「比較分析」という点は変わらないので、今回、Qlik Senseで、並列ステートと同じように比較分析できる環境を整えてみたいと思います。

Qlik Senseで比較分析する環境を整える

環境を整えるにあたり、ポイントは2つあります。
1.比較用テーブルの作成 比較分析に使う軸用に、テーブルを作る
2.変数の作成 比較したい軸に、値を受け渡す変数を作る
以上の2点です。

作成するアウトプットは以下の画面です。
年月を軸とした営業員ごとの売上を比較するグラフです。

Qlik Senseで実現する比較分析の設定方法1

ポイント1:比較用テーブルの作成

項目を選択しても、意図していないチャートなどに、条件の影響範囲を指定しないようにするため、データを取得したテーブルとは別に比較用のテーブルを作成します。
今回は商品を比較するので、すでに売上取得しているテーブルから、商品の項目を取得し、項目名を変更します。

Qlik Senseで実現する比較分析の設定方法2

項目名を編集しますが、変数を使うことによって、編集した項目を選択した場合でもチャートに値を受け渡すことが可能になります。
1つ目「比較分析用の軸を作成」するテーブルの準備はこれで完了です。 

ポイント2:変数の作成

従業員を選択した時に、チャートに値を受け渡すための変数を作ります。
変数の定義には「GetFieldSelections関数」を使用します。この関数は引数に軸項目を設定することによって、設定した軸項目を選択した時に、戻り値を渡すことができます。 
以下、ヘルプからの引用です。
※GetFieldSelections()は、項目内の現在の選択の string を返します。

Qlik Senseで実現する比較分析の設定方法3

画面作成

ポイント1で作成した比較したい項目(今回は営業員)をそれぞれフィルターで並べて配置します。

Qlik Senseで実現する比較分析の設定方法4
Qlik Senseで実現する比較分析の設定方法5

次にチャートを作ります。軸には年月を設定し、メジャーには先ほど設定した変数を使い、それぞれの数式を定義します。
比較従業員1を選択した時に、集計される数式を設定

Qlik Senseで実現する比較分析の設定方法6

以上で、比較分析の設定は完了です。
フィルター1でフィルター2はそれぞれ選択した項目をチャートで集計し分析することができます。

※ Qlik、QlikView、Qlik Sense、NPrinting、QlikTech は、QlikTech International AB の商標または登録商標です。
※ その他の会社名、製品名は各社の登録商標または商標です。
※ 記事の内容は記事公開時点での情報です。閲覧頂いた時点では異なる可能性がございます。