Функции ранжирования

Список функций ранжирования, которые можно использовать в выражениях.

Функция Описание
DenseRank(Arg1, Arg2, Arg3...) Возвращает целочисленное значение, ранжирующее значения в выбранном столбце. Первым аргументом является ранжируемый столбец.

Дополнительным аргументом может быть строка, определяющая метод ранжирования: по возрастанию (используется по умолчанию) или по убыванию. Чтобы наивысшее значение занимало первое место, используйте аргумент desc, а чтобы на первом месте было самое низкое значение, используйте asc.

Равным значением присваивается одинаковый ранг, а номер высшего значения равен числу уникальных значений в столбце.

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

Примеры.

DenseRank([Sales])

DenseRank([Sales], "desc", [Region])

Пример см. в разделе Ранжирование.

Rank(Arg1, Arg2, Arg3...) Возвращает целочисленное значение, ранжирующее значения в выбранном столбце. Первым аргументом является ранжируемый столбец.

Дополнительным аргументом может быть строка, определяющая метод ранжирования: по возрастанию (используется по умолчанию) или по убыванию. Чтобы наивысшее значение занимало первое место, используйте аргумент desc, а чтобы на первом месте было самое низкое значение, используйте asc.

Одинаковым значениям значения ранга присваиваются в соответствии со значениями необязательных аргументов:

"ties.method=minimum" (по умолчанию),

"ties.method=maximum" или

"ties.method=first".

Дополнительные сведения о доступных аргументах см. ниже в разделе Подробнее о ранжировании равных значений.

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

Примеры.

Rank([Sales])

Rank([Sales], "desc", [Region])

Rank([Sales], "ties.method=first")

Пример см. в разделе Ранжирование.

RankReal(Arg1, Arg2, Arg3...) Возвращает фактическое значение, ранжирующее значения в выбранном столбце. Первым аргументом является ранжируемый столбец.

Дополнительным аргументом может быть строка, определяющая метод ранжирования: по возрастанию (используется по умолчанию) или по убыванию. Чтобы наивысшее значение занимало первое место, используйте аргумент desc, а чтобы на первом месте было самое низкое значение, используйте asc.

Одинаковым значениям значения ранга присваиваются в соответствии со значениями необязательных аргументов:

"ties.method=minimum" (по умолчанию),

"ties.method=maximum",

"ties.method=first" или

"ties.method=average".

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

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

Примеры.

RankReal([Sales])

RankReal([Sales], "desc", [Region])

RankReal([Sales], "ties.method=average")

Прим.: Если для оси, на которой используется пользовательское выражение с ранжированием, был задан параметр «Вычислять выражение оси только по текущим фильтрам», то ранжирование будет вычисляться заново при каждой фильтрации.

Подробнее о ранжировании равных значений

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

Аргумент Описание
"ties.method=minimum" Дает всем равным значениям наименьшее значение ранга.
"ties.method=maximum" Дает всем равным значениям наибольшее значение ранга.
"ties.method=first" Дает первому найденному равному значению наименьшее значение ранга, а всем последующим равным значениям более высокие значения ранга.
"ties.method=average" Дает всем равным значениям среднее значение ранга всех равных значений.

Пример.

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

Список значений Метод ранжирования "ties.method=minimum" Метод ранжирования "ties.method=maximum" Метод ранжирования "ties.method=first" Метод ранжирования "ties.method=average"
1 1 1 1 1
2 2 3 2 2,5
3 4 4 4 4
2 2 3 3 2,5
(Пусто) (Пусто) (Пусто) (Пусто) (Пусто)
5 5 5 5 5

Если бы использовалась функция DenseRank, то в приведенном примере были бы сформированы значения ранга 1 2 3 4.

Также см. раздел Функции.