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

Qlik Senseのデータ整形テクニック:1つのセルに複数のデータが入っているときはSubFieldで分割する

2019年8月26日

Qlik Senseのスクリプトで1つのセルに複数のデータが入っているときはSubFieldで分割する

1つのセルに複数データが入っていると集計・検索が不便

こんにちは。Deckです。

今回は以下のようなデータを元に、現実にあるデータを扱いやすく変換する方法について学びましょう。

売上のデータですが、「購入商品」の列に複数のデータが入っています。

このデータを集計して「売れた商品は合計でいくつなのか?」を考えてみましょう。

Count(購入商品)として購入商品をカウントすると「4」となってしまい、正しい結果「10」が出ません。

このデータは集計できる形式になっていないのです。

この問題を解決するためにスクリプトでデータを整形しましょう。

サンプルデータはこちらからダウンロード

準備ができたらさっそくはじめましょう!

 

Qlik Senseのスクリプト SubField()関数でデータを分割

新しいアプリを開き、データ ロード エディタを開きます。

「接続の新規作成」から「フォルダ」を選びます。

 

 

データが入っているフォルダに移動して名前を入力し、「作成」をクリックします。

 

新規作成した接続の「データを選択」ボタンをクリックします。

 

ファイルを選択して「選択」をクリックします。

 

プレビューが表示されますが、そのまま「スクリプトを挿入」ボタンをクリックします。

 

自動生成されたスクリプトを編集します。

 

項目「購入商品」を以下のように変更します。

SubField(購入商品,',') as 購入商品

上の数式は購入商品を「,(カンマ)」を区切り文字として分割します。

 

データをロードすると取り込み結果は以下のようになります。

それぞれ購入された商品が分割され、データが縦に並ぶようになりました。

この状態のデータなら冒頭の「売れた商品は合計でいくつなのか?」という質問に対して「Count(購入商品)で計算するから、答えは10」と正しい結果を出すことができますね。

 

この記事は、以上です。

Deck

Written by Deck

BIスペシャリスト

Qlik_No1_2022
DXバナー
Qlikseminar
qliksense_trial
Qllikseminar
QlikSenseKnowledge
book_kawaii
Snowflake_バナー

新着記事

タグ別の記事

全て表示