メイン コンテンツをスキップする 補完的コンテンツへスキップ

データ ロード スクリプトでのクロス集計の使用

クロスタブは、ヘッダー データが直交する 2 つのリストに値のマトリックスを持つ一般的なテーブルの種類です。他のデータ テーブルにデータを関連付けたい場合は、必ずしも最適なデータ形式ではありません。

このトピックではクロスタブのピボットを無効にする方法、つまり、データ ロード スクリプト内の LOAD ステートメントに対する crosstable プレフィックスを使用して、タブの一部を行と入れ替える方法を説明します。

1 つの行見出し列により、クロスタブのピボットを無効にする

クロスタブでは、いくつか行見出しとなる列を表示することがあります。これらの列は、直接的な方法で読み取ります。この場合、行見出しとなる列 Year が 1 つあり、1 か月当たりの販売データのマトリクスがあります。

1 つの行見出し列を含むクロスタブ
YearJanFebMarAprMayJun
2008456578127822
2009112322224585
2010655622791256
2011452432785515
2012455635786882

このテーブルを単純に Qlik Sense にロードすると、Year (年) に 1 つ、そして各月に 1 つずつ項目が生成されます。ただし、通常はこのようなテーブルではデータを適切に管理できません。3 つの項目を生成したいはずです。

  • 行見出しとなる列、この場合では Year には、上のテーブルで緑色の印が付いています。
  • この場合では月の名前 Jan - Jun で表される属性項目には、黄色の印が付いています。この項目には、Month と名前を付けることができます。
  • データ マトリクスの値には、青色の印が付いています。この場合、値は販売データを表すので、Sales と名前を付けることができます。

それには LOAD または SELECT ステートメントに crosstable プレフィックスを追加します。

crosstable (Month, Sales) LOAD * from ex1.xlsx;

これにより、次のテーブルが Qlik Sense で作成されます。

LOAD または SELECT ステートメントに crosstable プレフィックスが追加されているテーブル
YearMonthSales
2008Jan45
2008Feb65
2008Mar78
2008Apr12
2008May78
2008Jun22
2009Jan11
2009Feb23
.........

2 つの行見出し列により、クロスタブのピボットを無効にする

この場合は、左側に 2 つの行見出し列があり、その後にマトリックス列が続きます。

2 つの行見出し列を含むクロスタブ
SalesmanYearJanFebMarAprMayJun
A2008456578127822
A2009112322224585
A2010655622791256
A2011452432785515
A2012455635786882
B2008577790249034
B2009233534345797
B2010776834912468
B2011573644906727
B2012576847908094

行見出し列の数は、次のように crosstable プレフィックスの 3 番目のパラメータとして指定できます。

crosstable (Month, Sales, 2) LOAD * from ex2.xlsx;

その結果、Qlik Sense で読み込んだ際に次のようになります

crosstable プレフィックスの 3 番目のパラメータとして指定された行見出し列を含むテーブル
販売員YearMonthSales
A2008Jan45
A2008Feb65
A2008Mar78
A2008Apr12
A2008May78
A2008Jun22
A2009Jan11
A2009Feb23
............

詳細を見る

 

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。