• 検索結果がありません。

テキスト中の表記について 画面中に表示される文字の表記ウィンドウ ボタン メニューなど 画面に表示される文字は [] で囲んで表記しています 画面上に表示される選択肢や 入力する文字については で囲んで表記しています ディレクトリの表記本テキストではファイルのパスを表す際 すべてデフォルトのインスト

N/A
N/A
Protected

Academic year: 2021

シェア "テキスト中の表記について 画面中に表示される文字の表記ウィンドウ ボタン メニューなど 画面に表示される文字は [] で囲んで表記しています 画面上に表示される選択肢や 入力する文字については で囲んで表記しています ディレクトリの表記本テキストではファイルのパスを表す際 すべてデフォルトのインスト"

Copied!
19
0
0

読み込み中.... (全文を見る)

全文

(1)

はじめに

コース概要と目的 本コースは、Qlik Sense入門の内容を踏まえ、より実践的なアプリケーション開発についてご覧いただくコースです。 データベースから取り込んだデータを自由に加工する方法や、チャートにさまざまな集計値を表示する方法などにつ いて、身に付けることを目的とします。 受講対象 「Qlik Sense入門」を受講された方、もしくは同等の知識をお持ちの方。 製品のバージョン 本テキストで解説しているQlik Senseは以下のバージョンを使用しています。 ・Qlik Sense June 2018

(2)

テキスト中の表記について 画面中に表示される文字の表記 ウィンドウ、ボタン、メニューなど、画面に表示される文字は[]で囲んで表記しています。 画面上に表示される選択肢や、入力する文字については「」で囲んで表記しています。 ディレクトリの表記 本テキストではファイルのパスを表す際、すべてデフォルトのインストールディレクトリを基準に表記しています。 お客様の環境と異なる場合は、適宜読み替えてください。 コマンドの構文規約 値 この表記は、ユーザーが適切な値に置き換えて指定することを表します。 { 値1 | 値2 | 値3 } この表記は{}の中から、いずれか1つを選択することを表します。 [値] この表記はその指定が任意に指定できる、オプションの指定であることを表します。必 ずしも指定する必要はありません。

・Qlik、QlikView 、Qlik Sense、QlikTechおよびQlikTechのロゴは、QlikTech International ABの登録商 標です。

・Microsoft、Windows、Microsoft Office、SQL Server、その他本書に記載されるマイクロソフト製品は、米 国Microsoft Corporationの、米国、日本およびその他の国における登録商標または商標です。 ・Linuxは、Linus Torvalds氏の日本およびその他の国における登録商標または商標です。 ・UbuntuおよびCanonicalは、Canonical Ltd.の登録商標です。 ・OracleとJavaは、Oracle Corporationおよびその子会社、関連会社の米国およびその他の国における登録 商標です。文中の社名、商品名などは各社の商標または登録商標である場合があります。 ・IBM、IBMロゴ、ibm.com、DB2およびdeveloperWorksは、世界の多くの国で登録されたInternational Business Machines Corp.の商標です。

・Mac、Mac OS、Safari、iPhone、iPadは、米国およびほかの国々で登録されたApple Inc.の商標です。 ・Google Chrome、AndroidはGoogle Inc.の商標です。

・Adobe、Adobeのロゴ、Adobe Reader、Acrobat、Flashは、Adobe Systems Incorporated(アドビ シス テムズ社)の商標です。

・Apache、Tomcatは、Apache Software Foundationの商標または登録商標です。

・Mozilla、Firefoxの名称およびそのロゴは、米国Mozilla Foundationの米国およびその他の国における商標 または登録商標です。 ・その他、記載されている会社名および製品名は、各社の登録商標または商標です。 ・本書では、®、©、TMマークなどは特に明記していません。 ・本書に記載された内容を使用して、いかなる損害が発生しても、株式会社アシスト、および、著者、本書製作関 係者は一切責任を負いません。

(3)

目次

第1章 さまざまな関数

1.1 Qlik Senseの関数...1-1

1.1.1 Qlik Senseの関数...1-1 1.1.2 関数の使用例1(If関数)...1-3 1.1.3 関数の使用例2(Class関数)...1-7 1.1.4 関数の使用例3(日付関数)...1-12 1.1.5 TOTAL修飾子、DISTINCT修飾子...1-19

1.2 Qlik Senseのデータ型...1-27

1.2.1 Qlik Senseのデータ型...1-27 1.2.2 データ型変換関数と書式設定関数...1-28 1.2.3 デュアル値について理解する...1-35 1.2.4 NULL値について理解する...1-40 1.2.5 端数処理...1-45

1.3 Aggr関数...1-46

1.3.1 Aggr関数とは...1-46 1.3.2 計算軸の作成...1-47 1.3.3 集計関数のネスト...1-51

1.4 その他の関数...1-55

1.4.1 レコード関数(Above関数など)...1-55 1.4.2 範囲関数(RangeSum関数)...1-60

1.5 練習問題...1-64

1.5.1 練習問題...1-64

1.6 第1章のまとめと章末付録...1-67

1.6.1 まとめ...1-67 1.6.2 章末付録...1-68

(4)

第2章 データモデリング

2.1 データモデリングの概要...2-1

2.1.1 データモデリングの概要...2-1

2.2 データ構造の変換...2-2

2.2.1 列から行への変換(Crosstableプレフィックス)...2-2 2.2.2 テーブルの連結(Concatenateプレフィックス)...2-9

2.3 データの結合...2-17

2.3.1 テーブルの結合(Joinプレフィックス)...2-17 2.3.2 データ値の置き換え(MappingプレフィックスとApplyMap関数)...2-21

2.4 集合演算...2-28

2.4.1 集合演算(Keepプレフィックス)...2-28 2.4.2 差分をもとめる(Exists関数)...2-32

2.5 テーブルの再読み込み...2-33

2.5.1 テーブルの再読み込み(Resident句)...2-33 2.5.2 Resident句の使用例...2-34 2.5.3 Load文のネストとResident句...2-39

2.6 データモデリングの実践...2-40

2.6.1 キーの作成(AutoNumber関数、AutoNumberHash関数)...2-40 2.6.2 循環参照の解決...2-52 2.6.3 マルチファクトの解決(リンクテーブル)...2-53 2.6.4 マスターカレンダーの作成...2-59 2.6.5 その他の参考情報...2-61

2.7 練習問題...2-62

2.7.1 練習問題...2-62

2.8 第2章のまとめと章末付録...2-66

2.8.1 まとめ...2-66 2.8.2 章末付録...2-67

(5)

第3章 QVDファイルと差分更新

3.1 QVDファイル...3-1

3.1.1 QVDファイルとは...3-1 3.1.2 QVDファイルの作成(Store文)...3-3

3.2 差分更新...3-8

3.2.1 Qlik Senseでの差分更新...3-8 3.2.2 差分更新のシナリオ...3-16 3.2.3 差分更新の例1(挿入のみの場合)...3-18 3.2.4 差分更新の例2(更新や削除がある場合)...3-28

3.3 練習問題...3-40

3.3.1 練習問題...3-40

3.4 第3章のまとめと章末付録...3-42

3.4.1 まとめ...3-42 3.4.2 章末付録...3-43

第4章 SET分析

4.1 SET分析...4-1

4.1.1 SET分析の基本...4-1 4.1.2 条件式の指定...4-7 4.1.3 複数の値の指定...4-11 4.1.4 前年比...4-17 4.1.5 前年比(動的な値の取得)...4-22 4.1.6 その他の機能と指定方法のまとめ...4-25

4.2 練習問題...4-26

4.2.1 練習問題...4-26

4.3 第4章のまとめと章末付録...4-27

4.3.1 まとめ...4-27 4.3.2 章末付録...4-27

(6)

第5章 可視化の実践

5.1 チャートの活用...5-1

5.1.1 チャートの分類...5-1 5.1.2 棒グラフを活用する...5-10 5.1.3 数値の分布や相関関係を確認する...5-16 5.1.4 マップを活用する...5-25

5.2 可視化のポイント...5-36

5.2.1 可視化のポイント...5-36 5.2.2 情報の階層を整理する...5-37 5.2.3 チャートの配置を検討する...5-41 5.2.4 色を効果的に使う...5-44 5.2.5 アプリをシンプルにする...5-47

5.3 練習問題...5-60

5.3.1 練習問題...5-60

5.4 第5章のまとめと章末付録...5-64

5.4.1 まとめ...5-64 5.4.2 章末付録...5-65

A 付録

A.1 付録...A-3

A.1.1 マッピングテーブルを使用した項目名の変更...A-3 A.1.2 データベース中の値を変数に格納する(Peek関数)...A-5 A.1.3 InlineとAutoGenerate...A-7 A.1.4 フォルダデータ接続...A-9

(7)

さまざまな関数

1.1 Qlik Senseの関数

1.1.1 Qlik Senseの関数

Qlik Senseには、独自の関数が数多く用意されています。 下図は関数の一例です。 Qlik Sense応用コース 1-1

(8)

この章ではよく使用する関数についてご覧いただきます。

その他の関数や、関数の構文の詳細についてはQlik Senseのヘルプでご確認いただけます。

スクリプトおよびチャート数式での関数 - Qlik Sense

https://help.qlik.com/ja-JP/sense/February2018/Subsystems/Hub/Content/Scripting/ functions-in-scripts-chart-expressions.htm

本テキスト作成時点で、日本語版のヘルプが提供されているのはQlik Sense February 2018以前のバージョン となります。

該当のバージョンで日本語版の提供が開始されると、ヘルプ画面右上のメニューから「日本語」を選択できるように なります。

1-2 Copyright(C) 2018 K.K. Ashisuto All Rights Reserved. バージョンを選択できます。

(9)

さまざまな関数

1.1.2 関数の使用例1(If関数)

If関数は条件式を元に演算をおこないます。 条件式を指定して、条件式を満たすときの値と満たさなかったときの値を指定します。 If(条件式, 値1 [, 値2]) 条件式 条件式を指定します。 値1 条件式を満たすときの値を指定します。 値2 条件式を満たさなかったときの値を指定します。 省略すると、条件式を満たさなかった場合はNULL値が返されます。 例 実績が目標以上だった場合は「達成」、目標未満だった場合は「未達成」と表示します。 If(実績 >= 目標, '達成', '未達成')

題1 If関数の利用 If関数を使用して単価の項目を元に、単価区分の項目を作成してみましょう。 下図は単価ごとに納品数量を集計した円グラフです。 単価のような金額のデータを軸にする場合、元のデータをそのまま使用するのではなく、ある一定の単位でグループ 化することがよくあります。 Qlik Sense応用コース 1-3

(10)

1 REI101を開き、「円グラフ」のシートに切り替えます。 単価ごとの納品数量を円グラフで集計しています。単価のデータの種類が多く、一目で傾向がつかみにくいグ ラフとなっています。 よりわかりやすいグラフにするために、単価を「1万円未満」「1万円以上」「10万円以上」の3つの区分でグ ループ化します。 2 データロードエディタを起動します。 まずは、「10万円未満」、「10万円以上」という2つの条件でグループ化します。 商品テーブルの末尾に、以下の指定を追加します。 以上で設定は完了です。データをロードします。

1-4 Copyright(C) 2018 K.K. Ashisuto All Rights Reserved. If(単価 >= 100000, '10万円以上', '10万円未満') as 単価区分;

(11)

さまざまな関数 3 [アプリ概要]から「テーブル」のシートを開きます。シートの編集画面を表示し、[アセット]パネルから「単価 区分」を追加します。 単価区分のテーブルが追加されたら、サイズを調整します。 4 単価がグループ化されていることを確認します。 単価区分の値を選択し、動作を確認します。 また、「円グラフ」シートに切り替え、単価区分を軸とした円グラフを確認します。 Qlik Sense応用コース 1-5

(12)

5 次に、1万円未満、1万円以上、10万円以上という条件でグループ化します。 データロードエディタを起動し、以下の指定に編集します。 以上で設定は完了です。データをロードします。 Tip この例では見やすいように、If関数の途中で改行していますが、改行は必須ではありません。 6 [アプリ概要]から「テーブル」のシートと「円グラフ」のシートを開き、単価区分の動作を確認します。

1-6 Copyright(C) 2018 K.K. Ashisuto All Rights Reserved. If(単価 >= 100000, '10万円以上',

(13)

5.1.2 棒グラフを活用する

ここまででご覧いただいたとおり、棒グラフは値の比較をしたり、2値の隔たりを見たり、または円グラフのかわりに割合 を表示したりと、多くの用途に使用できます。 ここでは、単純な棒グラフ以外の棒グラフについて見ていきます。

題1 棒グラフの活用 コンボチャートや100%積み上げ棒グラフなどを作成してみましょう。ここでは、作成済みのチャートを下図のように変 更してみましょう。

5-10 Copyright(C) 2018 K.K. Ashisuto All Rights Reserved. コンボチャートでマーカーを使用

100% 積み上げ棒グラフ 円グラフを棒グラフに変換

変更前

(14)

可視化の実践 1 REI501を開いて、[編集]ボタンをクリックしてください。 まず画面上部の棒グラフをコンボチャートに変換します。 [アセット]パネルの[チャート]タブから、「コンボチャート」を棒グラフ上にドラッグ&ドロップして、[以下に変 換:コンボチャート]を選択します。 2 [プロパティ]パネルの[データ]-[メジャー]で「昨年度売上集計」を開きます。「マーカー」を選択し、「線」を 選択します。 Qlik Sense応用コース 5-11

(15)

3 つづいて、画面左下の円グラフを棒グラフに変換します。

[アセット]パネルの[チャート]タブから、「棒チャート」を円グラフ上にドラッグ&ドロップして、[以下に変換:棒 チャート]を選択します。

4 横棒グラフで表示してみましょう。

[プロパティ]パネルの[スタイル]-[プレゼンテーション]で「水平」を選択します。

(16)

可視化の実践 5 棒グラフの値が割合ではなく実数になっています。数式を編集して割合の表示に変更してみましょう。 [データ]-[メジャー]で[数式]を以下の数式に変更します。 また、割合の表示にするために、数値書式を下図のように変更してみましょう。 6 グリッド線やX軸ラベルを削除して、かわりに値ラベルを表示してみましょう。 [スタイル]-[プレゼンテーション]で[グリッド線の間隔]の[自動]を無効にして、[カスタム]を「なし」に設定 します。 また[値ラベル]を有効にします。 Qlik Sense応用コース 5-13 Sum([売上金額]) / Sum(total [売上金額])

(17)

7 [スタイル]-[X軸]で[ラベルとタイトル]を「なし」に設定します。

8 最後に、画面右下の棒グラフを100%積み上げ棒グラフに変更してみましょう。 棒グラフを選択して、[プロパティ]パネルの[スタイル]-[プレゼンテーション]を開きます。 「積み上げ」と「水平」を選択します。

(18)

可視化の実践 9 100%積み上げ棒グラフに変更してみましょう。前回のグラフと同じように、数式を編集して割合の表示に変 更します。 [データ]-[メジャー]で[数式]を以下の数式に変更します。 また、割合の表示にするために、数値書式を下図のように変更してみましょう。 10 以上で完成です。結果を確認してみましょう。 Qlik Sense応用コース 5-15 Sum([売上金額]) / Sum(total<年> [売上金額])

(19)

1.5 練習問題

1.5.1 練習問題

題1 If関数の利用 TOI101のアプリを開いてください。 If関数を使用して、単価の項目をグループ分けした単価区分の項目を作成しましょう。 単価区分の項目は、単価の値が10万円以上のものと10万円未満のものでグループ分けをして作成します。 データロードエディタで単価区分の項目を作成し、作成した単価区分をあらかじめ用意してあるフィルターパネルに 配置してください。

参照

関連したドキュメント

回転に対応したアプリを表示中に本機の向きを変えると、 が表 示されます。 をタップすると、縦画面/横画面に切り替わりま

これはつまり十進法ではなく、一進法を用いて自然数を表記するということである。とは いえ数が大きくなると見にくくなるので、.. 0, 1,

管理画面へのログイン ID について 管理画面のログイン ID について、 希望の ID がある場合は備考欄にご記載下さい。アルファベット小文字、 数字お よび記号 「_ (アンダーライン)

つの表が報告されているが︑その表題を示すと次のとおりである︒ 森秀雄 ︵北海道大学 ・当時︶によって発表されている ︒そこでは ︑五

QRコード読込画面 が表示されたら、表 示された画面を選択 してウインドウをアク ティブな状態にした 上で、QRコードリー

(注)本報告書に掲載している数値は端数を四捨五入しているため、表中の数値の合計が表に示されている合計

“〇~□までの数字を表示する”というプログラムを組み、micro:bit

パキロビッドパックを処方入力の上、 F8特殊指示 →「(治)」 の列に 「1:する」 を入力して F9更新 を押下してください。.. 備考欄に「治」と登録されます。