# Fractile — функция диаграммы

Функция Fractile() находит значение, соответствующее квантилю агрегированных данных в диапазоне, полученном из выражения, выполняющего итерации по измерениям диаграммы (метод включения).

Примечание к подсказке[FractileExc — функция диаграммы](https://help.qlik.com/ru-RU/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/ChartFunctions/StatisticalAggregationFunctionsinCharts/fractileexc.htm) можно использовать для вычисления исключительного квантиля.

Синтаксис:

Fractile([{SetExpression}] [DISTINCT] [TOTAL [&lt;fld{, fld}&gt;]] expr, fraction)

Возвращаемые типы данных: числовое значение

Функция возвращает значение, соответствующее ранжированию, как определено в формуле: `rank = дробь * (N-1) + 1`, где `N` — количество значений в `expr`. Если `rank` — нецелое число, выполняется интерполяция между двумя самыми близкими значениями.

Аргументы:

* expr: Выражение или поле, содержащее данные для вычисления квантиля.
* fraction: Число от 0 до 1, соответствующее квантилю (выраженному в дробном виде), которое подлежит вычислению.
* SetExpression: По умолчанию функция агрегирования агрегирует множество возможных записей, определенных выборкой. Альтернативный набор записей может быть определен набором выражений анализа.
* DISTINCT: Если слово DISTINCT указывается до аргументов функции, все дубликаты, возникшие в результате оценки аргументов функции, будут проигнорированы.
* TOTAL: Если слово TOTAL стоит перед аргументами функции, вычисление выполняется по всем возможным значениям, указанным в текущих выборках, а не только в тех, которые относятся к значению текущего измерения, т. е. измерения диаграммы игнорируются. При использовании выражения TOTAL [&lt;fld {.fld}&gt;], где префикс TOTAL предшествует списку из одного или нескольких имен полей, выступающих в качестве подмножества переменных измерения диаграммы, создается подмножество всех возможных значений.

Ограничения:

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

Примеры:

Примеры и результаты

| Пример | Результат |
| --- | --- |
| `Fractile(Sales, 0.75)` | Для таблицы, включающей измерение `Customer` и меру `Fractile([Sales])`, если показано значение Итоги, результат будет 71,75. Это точка в распределении значений элемента `Sales`, ниже которой находится 75% значений. |
| `Fractile(TOTAL Sales, 0.75))` | 71,75 для всех значений элемента `Customer`, поскольку классификатор TOTAL означает, что измерения игнорируются. |
| `Fractile(DISTINCT Sales, 0.75)` | 70 для итогового значения, поскольку использование классификатора DISTINCT означает, что оцениваются только уникальные значения в поле `Sales` для каждого элемента `Customer`. |

**Данные, используемые в примерах:**

```
Monthnames:
LOAD *, Dual(MonthText,MonthNumber) as Month INLINE [
MonthText, MonthNumber
Jan, 1
Feb, 2
Mar, 3
Apr, 4
May, 5
Jun, 6
Jul, 7
Aug, 8
Sep, 9
Oct, 10
Nov, 11
Dec, 12
];

Sales2013:
Crosstable (MonthText, Sales) LOAD * inline [
Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec
Astrida|46|60|70|13|78|20|45|65|78|12|78|22
Betacab|65|56|22|79|12|56|45|24|32|78|55|15
Canutility|77|68|34|91|24|68|57|36|44|90|67|27
Divadip|57|36|44|90|67|27|57|68|47|90|80|94
] (delimiter is '|'); 
```

Пример данных в виде таблицы

| Customer | Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Astrida | 46 | 60 | 70 | 13 | 78 | 20 | 45 | 65 | 78 | 12 | 78 | 22 |
| Betacab | 65 | 56 | 22 | 79 | 12 | 56 | 45 | 24 | 32 | 78 | 55 | 15 |
| Canutility | 77 | 68 | 34 | 91 | 24 | 68 | 57 | 36 | 44 | 90 | 67 | 27 |
| Divadip | 57 | 36 | 44 | 90 | 67 | 27 | 57 | 68 | 47 | 90 | 80 | 94 |