# class Функция скрипта и диаграммы

Функция class назначает первый параметр интервалу классов. Результат — двойное значение с уравнением 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/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)

## Пример. Основы использования функции class

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

#### Выражение диаграммы

Обзор

Загружена таблица данных, содержащая имена и возраст. Необходимо классифицировать людей по возрастным группам (с интервалом в десять лет) и подсчитать количество людей в каждой группе.

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки в новый раздел.

Скрипт загрузки содержит следующее:

* Набор данных, который загружается в таблицу данных под именем `Example`.

* Следующие поля в таблице данных:

  * `Age`

  * `Name`

Скрипт загрузки

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

Результаты

1. Загрузите данные и откройте лист. Создайте две новых таблицы.

2. В первой таблице сделайте следующее:

   1. Добавьте эти измерения:

      * `Age`

      * `Name`

   2. Создайте следующую меру:

      * `=class(Age, 10, 'age')`, чтобы классифицировать данные по возрастным категориям.

3. Во второй таблице сделайте следующее:

   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 |

Во второй таблице выводятся сводные данные по категориям. Функция функции `class` возвращает 3 возрастные категории в первой мере. Вторая мера подсчитывает количество людей в каждой возрастной категории.

Результирующая таблица 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/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFunctions/class.htm)

#### Скрипт загрузки

Обзор

Загружена таблица данных, содержащая имена и возраст. Необходимо добавить поле, которое классифицирует каждого человека по возрастной группе с десятилетним интервалом. Первоначальная исходная таблица выглядит, как показано ниже.

Оригинальная исходная таблицаОригинальная исходная таблица

| 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/sense/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. В первой таблице сделайте следующее:

   1. Добавьте эти измерения:

      * `CustomerID`

      * `CustomerName`

      * `LifetimeValue`

   2. Создайте следующее вычисляемое измерение:

      * `=Class(LifetimeValue, 10000, 'Lifetime Value Group')`, чтобы классифицировать данные по полю `LifetimeValue`.

3. Во второй таблице сделайте следующее:

   1. Добавьте это выражение в качестве измерения

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

   2. Создайте следующую меру:

      * `=Count(CustomerID)`, чтобы подсчитать число людей по категориям возраста.

Первая таблица содержит необработанные данные, которые были введены, и результаты функции Class.

Результирующая таблица 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 |

Вторая таблица показывает, как можно классифицировать и обобщить данные. Данные делятся на четыре группы с помощью функции `class`, а затем подсчитываются, чтобы показать количество клиентов в каждой группе.

Результирующая таблица 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 |