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

RangeFractile() возвращает значение, соответствующее n-ному fractile (квантилю) диапазона чисел.

Примечание к информации RangeFractile() использует линейное интерполирование между ближайшими рядами при вычислении квантиля.

Синтаксис:

RangeFractile(fractile, first\_expr[, Expression])

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

Аргументы:

Аргументы этой функции могут содержать межзаписные функции, которые в свою очередь возвращают список значений.

Аргументы

| Аргумент | Описание |
| --- | --- |
| fractile | Число от 0 до 1, соответствующее квантилю (выраженному в дробном виде), которое подлежит вычислению. |
| first\_expr | Выражение или поле, содержащее данные для измерения. |
| Expression | Дополнительные выражения или поля, содержащие диапазон значений для измерения. |

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

Примеры функции

| Примеры | Результаты |
| --- | --- |
| `RangeFractile<br>(0.24,1,2,4,6)` | Возвращает 1.72 |
| `RangeFractile(0.5,1,2,3,4,6)` | Возвращает 3 |
| `RangeFractile<br>(0.5,1,2,5,6)` | Возвращает 3.5 |

Пример:

Добавьте образец скрипта в свое приложение и запустите. Чтобы увидеть результат, добавьте поля, перечисленные в столбце результатов, на лист в вашем приложении.

`RangeTab:` `LOAD recno() as RangeID, RangeFractile(0.5,Field1,Field2,Field3) as MyRangeFrac INLINE [` `Field1, Field2, Field3` `10,5,6` `2,3,7` `8,2,8` `18,11,9` `5,5,9` `9,4,2`

`];`

Результирующая таблица показывает возвращенные значения функции MyRangeFrac для каждой записи в таблице.

Результирующая таблица

| RangeID | MyRangeFrac |
| --- | --- |
| 1 | 6 |
| 2 | 3 |
| 3 | 8 |
| 4 | 11 |
| 5 | 5 |
| 6 | 4 |

Пример с выражением:

`RangeFractile
 (0.5, Above(Sum(MyField),0,3))`

В этом примере функция Above() содержит дополнительные аргументы offset и count. В результате формируется диапазон результатов, который можно использовать в качестве данных, вводимых в любую функцию над выборкой. В этом случае функция `Above(Sum(MyField),0,3)` возвращает значения поля `MyField` для текущей строки и двух строк над ней. Эти значения являются входными значениями для функции RangeFractile(). Таким образом для нижней строки в следующей таблице это эквивалентно `RangeFractile(0.5, 3,4,6)`, то есть вычислению квантиля 0,5 для ряда 3, 4 и 6. Для первых двух строк в таблице ниже количество значений в диапазоне соответственно уменьшается, если нет строк выше текущей строки. Похожие результаты будут и для других межзаписных функций.

Данные образца

| MyField | RangeFractile(0.5, Above(Sum(MyField),0,3)) |
| --- | --- |
| 1 | 1 |
| 2 | 1.5 |
| 3 | 2 |
| 4 | 3 |
| 5 | 4 |
| 6 | 5 |

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

`RangeTab:` `LOAD * INLINE [` `MyField` `1` `2` `3` `4` `5` `6` `] ;`

## Подробнее

* [Above — функция диаграммы](https://help.qlik.com/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)
* [Fractile — функция диаграммы](https://help.qlik.com/ru-RU/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/StatisticalAggregationFunctionsinCharts/fractile.htm)