お問い合わせ
3 分で読むことができます。

QlikViewのDual値【文字列でも数値でもあるデータ】

執筆者 Deck 更新日時 2020年1月13日

【QlikView】Dual -- 文字列でも数値でもあるデータ

■目次

Qlik senseのDual値:文字列なのにSumで集計できる!?

 

こんにちは。Deckです。

今回はQlikViewの特徴的な機能であるDualを解説します。

Dualとは「画面上では文字列だけど、数値としても計算でき」データのことです。

一見しただけではわかりにくいかもしれませんが、使いこなせると非常に便利な機能です。

サンプルを参考に、Dualとはどんなものか見てみましょう。

Qlik SenseでDualを使う方法はこちらの記事をどうぞ

 

まず、以下のような生活習慣のアンケートデータを考えます。

 

朝食を食べる頻度はどのくらいですか?

数値回答1

1 毎朝食べる
2 ときどき食べる
3 ほとんど食べない

 

1食にどのくらいの量を食べますか?

数値回答2

1 腹八分目まで食べる
2 満腹になるまで食べる

 

週にどのくらい運動をしますか?

数値回答3

1 週に数回以上
2 週に1~2回
3 ほとんど運動しない

 

ここでは回答1~3を足し合わせて肥満リスクを計算するとしましょう。

 

たとえば、「朝はほとんど食べない(3)」+「1食は腹八分目まで食べる(1)」+「週に1~2回運動する(2)」という人は3 + 1 + 2 = 肥満リスク6 のように計算します。

 

Dualには「文字列だけど、数値として計算もできる」性質があるので上のようなデータもとてもわかりやすく集計できますよ!

 

サンプルデータ

今回使用するサンプルデータはこちらからダウンロードできます。

zipファイルには「アンケートデータ」+「アンケートの回答と数値の対応データ」が入っています。

 

アンケートデータの集計

ロードスクリプト編集画面からファイルを読み込みます。
「テーブル ファイル..」をクリックします。


 

対応表1・対応表2・対応表3・アンケートデータの順で追加を行ってください。


 

データの追加を繰り返して回答と数値の対応表、アンケートデータのスクリプトを追加します。


 

数値と回答を変換するため、対応表をマッピングテーブルとして取り込みます。


スクリプトを以下のように編集します。

  • テーブル名を「朝食を食べる頻度_Mapping」「一食の量_Mapping」「運動_Mapping」に設定
  • LOAD文の前にMappingを追加

 

アンケートデータの読み込みスクリプトを以下のように編集します。

LOAD
回答者,
Dual(ApplyMap('朝食を食べる頻度_Mapping',回答1),回答1) as 回答1,
Dual(ApplyMap('一食の量_Mapping',回答2),回答2) as 回答2,
Dual(ApplyMap('運動_Mapping',回答3),回答3) as 回答3

 

以上でスクリプトの準備が完了しました。

データをロードし、シートの編集画面に移りましょう。

 

集計テーブルの作成

シートの編集画面からテーブルを作成します。


 

軸に「回答者」、「回答1」、「回答2」、「回答3」を追加します。


 

メジャーとして「肥満リスク」を追加します。
数式は「Sum(回答1+回答2+回答3)」とし、ラベルは「肥満リスク」とします。
合計モードは「合計なし」に設定します。


 

完成

アンケートデータの集計テーブルが完成しました。
「回答1~3」は文字列として表示され、「肥満リスク」は数値として集計されています!


このように、「数値と文字列の両方の性質を持つ」データはDualを使ってQlikViewに読み込ませると便利に集計が行えますね!

QlikViewを体験してみませんか?

INSIGHT LABではQlik紹介セミナーを定期開催しています。QlikViewとQlik Senseの簡単な製品概要から、Qlikの特性である「連想技術」のご紹介、デモを通してQlikViewとQlik Senseの操作感や美しいインターフェースをご覧いただきます。企業の大切な資産である膨大なデータからビジネスを発見する 「Business Discovery」を是非ご体験ください。

詳細はこちら

Deck

執筆者 Deck

BIスペシャリスト

2 分で読むことができます。

QlikView 関数 まとめ一覧【重要関数大全】

2 分で読むことができます。

【QlikView/Qlik Sense】Set分析でCount関数を使う方法