# class スクリプトおよびチャート関数

class 関数は、class の間隔に最初のパラメータを割り当てます。結果は dual 値であり、a&lt;=x&lt;bがテキスト値として含まれています (aとbはビンの上限と下限で、下限は数値で示されます)。

構文:

class(expression, interval [ , label [ , offset ]])

戻り値データ型： デュアル

引数

| 引数 | 説明 |
| --- | --- |
| interval | ビン幅を特定する数値。 |
| label | 結果のテキストの 'x' を置き換えることができる任意の文字列。 |
| offset | デフォルトの分類開始点から、オフセットとして使用される数値。 デフォルトの開始点は、通常 0 です。 |

例: チャートの数式

| 例 | 結果 |
| --- | --- |
| `class( var,10<br>					)` で、`var = 23` | `20<=x<30` を返します |
| `class( var,5,'value'<br>					)` で、`var = 23` | `20<= value <25` を返します |
| `class(<br>							var,10,'x',5<br>					)` で、`var = 23` | `15<=x<25` を返します |

このトピックの例のいくつかは、インライン ロードを使用しています。詳細については、「[インライン ロードを使用したデータのロード](https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)」を参照してください。

## 例 - class の基本

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/class.htm)

#### チャートの数式

概要

名前と年齢を含むデータ テーブルがロードされます。人々を年齢グループ別 (10 年間隔) に分類し、各グループの人数をカウントしようとしています。

データ ロード エディターを開き、以下のロード スクリプトを新しいセクションに追加します。

ロード スクリプトには次が含まれています:

* 「`Example`」というデータ テーブルにロードされるデータセット。

* データ テーブル内の次の項目:

  * `Age`

  * `Name`

ロード スクリプト

```
Example:
LOAD * INLINE [
Age, Name
25, John
42, Karen
53, Yoshi
43, Bob
27, Charles
];
```

結果

1. データをロードしてシートを開きます。2 つの新しいテーブルを作成します。

2. 最初のテーブルで、次の操作を実行します。

   1. 次の軸を追加します。

      * `Age`

      * `Name`

   2. 次のメジャーを作成します:

      * `=class(Age, 10, 'age')`、データを年齢カテゴリに分類します。

3. 2 番目のテーブルで、次の操作を実行します。

   1. この数式を軸として追加します

      * `=class(Age, 10, 'age')`

   2. 次のメジャーを作成します:

      * `=Count(Age)`、年齢区分別に人数をカウントします。

最初の表には、`Name` と `Age` の生データと、それらがどの年齢カテゴリに分類されるかが表示されます。

結果テーブル 1

| Name | Age | class(Age, 10, 'age') |
| --- | --- | --- |
| Bob | 43 | 40 &lt;= age &lt; 50 |
| Charles | 27 | 20 &lt;= age &lt; 30 |
| John | 25 | 20 &lt;= age &lt; 30 |
| Karen | 42 | 40 &lt;= age &lt; 50 |
| Yoshi | 53 | 50 &lt;= age &lt; 60 |

2 番目のテーブルでは、データがどのように分類され、要約されているかを確認できます。`class` 関数の結果により、最初のメジャーで 3 つの年齢カテゴリが作成されました。2 番目のメジャーでは、各年齢層の人数をカウントします。

結果テーブル 2

| class(Age, 10, 'age') | Count(Age) |
| --- | --- |
| Totals | 5 |
| 20 &lt;= age &lt; 30 | 2 |
| 40 &lt;= age &lt; 50 | 2 |
| 50 &lt;= age &lt; 60 | 1 |

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/class.htm)

#### ロード スクリプト

概要

名前と年齢を含むデータ テーブルがロードされます。10 歳単位での年齢グループにより、各人を分類する項目を追加しようとしています。元のソース テーブルは次のようになります。

オリジナル ソース テーブルオリジナル ソース テーブル

| Name | Age |
| --- | --- |
| John | 25 |
| Karen | 42 |
| Yoshi | 53 |

データ ロード エディターを開き、以下のロード スクリプトを新しいセクションに追加します。

ロード スクリプトには次が含まれています:

* class 関数を使用して `Agegroup` という新しい項目を作成する先行ロード ステートメント。

ロード スクリプト

```
LOAD *,
class(Age, 10, 'age') As Agegroup;

LOAD * INLINE
[ Age, Name
25, John
42, Karen
53, Yoshi];
```

結果

データをロードしてシートを開きます。新しいテーブルを作成し、これらの項目を軸として追加します:

* `Name`

* `Age`

* `Agegroup`

結果テーブルテーブル

| Name | Age | Agegroup |
| --- | --- | --- |
| John | 25 | 20 &lt;= age &lt; 30 |
| Karen | 42 | 40 &lt;= age &lt; 50 |
| Yoshi | 53 | 50 &lt;= age &lt; 60 |

新しい項目 `Agegroup` は、各人を年齢カテゴリ別に分類します。

## 例 - class のシナリオ

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/class.htm)

#### チャートの数式

概要

顧客データを含むデータ テーブルがロードされます。獲得した生涯価値ポイント数で顧客を分類し、各カテゴリの顧客数をカウントしようとしています。

データ ロード エディターを開き、以下のロード スクリプトを新しいセクションに追加します。

ロード スクリプトには次が含まれています:

* 「`Example`」というデータ テーブルにロードされるデータセット。

* データ テーブル内の次の項目:

  * `CustomerID`

  * `CustomerName`

  * `LifetimeValue`

ロード スクリプト

```
Example:
Load * Inline [
CustomerID, CustomerName, LifetimeValue
1, John Doe, 12500
2, Jane Smith, 36000
3, Sam Brown, 15000
4, Lisa White, 50000
5, Tom Harris, 22000
];
```

結果

1. データをロードしてシートを開きます。2 つの新しいテーブルを作成します。

2. 最初のテーブルで、次の操作を実行します。

   1. 次の軸を追加します。

      * `CustomerID`

      * `CustomerName`

      * `LifetimeValue`

   2. 次の計算軸を作成します。

      * `=Class(LifetimeValue, 10000, 'Lifetime Value Group')`、`LifetimeValue` 項目に基づいてデータを分類します。

3. 2 番目のテーブルで、次の操作を実行します。

   1. この数式を軸として追加します

      * `=Class(LifetimeValue, 10000, 'Lifetime Value Group')`

   2. 次のメジャーを作成します:

      * `=Count(CustomerID)`、年齢区分別に人数をカウントします。

最初のテーブルには、入力された生データとクラス関数を使用した結果が表示されます。

結果テーブル 1

| CustomerID | CustomerName | LifetimeValue | Class(LifetimeValue, 10000, 'Lifetime Value Group') |
| --- | --- | --- | --- |
| 1 | John Doe | 12500 | 10000 &lt;= Lifetime Value Group &lt; 20000 |
| 2 | Jane Smith | 36000 | 30000 &lt;= Lifetime Value Group &lt; 40000 |
| 3 | Sam Brown | 15000 | 10000 &lt;= Lifetime Value Group &lt; 20000 |
| 4 | Lisa White | 50000 | 50000 &lt;= Lifetime Value Group &lt; 60000 |
| 5 | Tom Harris | 22000 | 20000 &lt;= Lifetime Value Group &lt; 30000 |

2 番目のテーブルには、データがどのように分類され、要約されるかが示されています。データは、`class` 関数を使用して 4 つのグループに分類され、各グループの顧客数を表示するためにカウントされます。

結果テーブル 2

| Class(LifetimeValue, 10000, 'Lifetime Value Group') | Count(CustomerID) |
| --- | --- |
| Totals | 5 |
| 10000 &lt;= Lifetime Value Group &lt; 20000 | 2 |
| 20000 &lt;= Lifetime Value Group &lt; 30000 | 1 |
| 30000 &lt;= Lifetime Value Group &lt; 40000 | 1 |
| 50000 &lt;= Lifetime Value Group &lt; 60000 | 1 |