Выборка — это фильтрация данных на основе значений фактов. При использовании верхних размерностей они также могут учитываться в выборке. Выборка скрывает все элементы размерности, значения фактов которых не удовлетворяют условиям выборки.
В Polymatica Analytics есть три предустановленных шаблона выборки и возможность создания пользовательской выборки. Функциональность выборки доступна через контекстное меню факта:
В контекстном меню «Выборка» предусмотрено три шаблона выборок:
- Скрытие строк с 0 и Null для выбранного факта;
- Скрыть строки, где значения всех фактов равны 0 и/или Null;
Скрыть строки, где значение одного из фактов равно 0 или Null.
Информация
Если колонок факта несколько (например, присутствует верхняя размерность), шаблон учитывает все колонки.
Кнопка-ссылка «Новая выборка» открывает окно создания пользовательской выборки:
Условия для выборки задаются в формуле посредством выбора объектов в блоке «Данные» (или в выпадающих списках в поле ввода формулы) и с помощью кнопок для применения функций и операторов, а также с помощью ввода значений с клавиатуры. В формуле обязательно нужно указать условия по крайней мере для одного факта. При наличии в таблице верхних размерностей можно ограничить область выборки, указав конкретные элементы верхней размерности, тогда в выборке будут учитываться значения факта только в соответствующих столбцах.
В формуле выборки необходимо задавать логические выражения. Использование арифметических выражений не предусмотрено.
Для создания формулы вы можете использовать следующий процесс:
Укажите верхнюю размерность, выбрав ее в левой части окна в блоке «Данные», в списке с заголовком «Размерность»:
Выбор размерностиВ поле для ввода формулы появится регулярное выражение типа Размерность, (Выберите элемент):
Размерность в поле ввода формулыПримечание
Если область выборки необходимо ограничить конкретными элементами верхних размерностей, то сначала указывается размерность, после чего будет предложено выбрать элемент. После этого нужно вставить оператор AND и выбрать факт. Если такое ограничение не нужно, следует начать с шага 3, тогда выборка будет проводиться с учетом всех данных таблицы для выбранного факта.
Укажите элемент выбранной верхней размерности. Его можно выбрать в левой части окна в блоке «Данные» или из выпадающего списка по нажатию на кнопку для выбора элемента в поле ввода формулы:
Выбор элементаВнимание
Списки размерностей и элементов в блоке «Данные» доступны только при наличии в рабочей области мультисферы по крайней мере одной верхней размерности. Если верхняя размерность не добавлена, в списке элементов отображается соответствующая подсказка:
Окно «Выборка» без верхних размерностей в таблицеУкажите факт. Его всегда можно выбрать в левой части окна в блоке «Данные»:
Выбор факта в блоке «Данные»
Также факт можно выбрать в выпадающем списке в поле ввода формул, если предварительно была выбрана функция, предполагающая выбор факта:Выбор факта из выпадающего спискаЕсли область выборки необходимо ограничить конкретными элементами верхних размерностей, то на шаге 3 после выбора размерности и элемента нужно вставить оператор AND и выбрать факт.
Выбор размерностей, элементов и фактовЗадайте условие. Для задания условия выборки можно использовать следующие функции и операторы:
Кнопка
Значение
Функция
Синтаксис
Статистические функции top(n)
Выборка наибольших значений
Возвращает n наибольших значений выбранного факта.
В данной версии программы функция top(n) не работает. Планируется исключение данной функции из системы и замена ее функцией top_fetch. Сейчас функцию top_fetch можно использовать через кнопку функции top(n).
top([факт 1];n), например: top([Депозит];10)
corr
Корреляция
Возвращает коэффициент корреляции между значениями двух выбранных фактов. Используется коэффициент Пирсона.
При вынесении влево нескольких размерностей вычисляется для каждого элемента самой левой размерности на основе значений соответствующих элементов вложенной размерности.
При вынесении влево одной размерности вычисляется для строки совокупных итогов на основе значений элементов этой размерности.corr([факт 1];[факт 2]), например: corr([Депозит];[Оплата])
В формуле выборки функцию следует использовать не изолированно, а в составе логического выражения. Например: corr([Депозит];[Оплата])>0,5
Логические функции
if
Если
Выполняет проверку условия.
if(условие;результат 1, если истинно; результат 2, если ложно)
Чтобы отобразить строки, удовлетворяющие условию, и скрыть строки, не удовлетворяющие условию, на месте результата 1 нужно ввести 1, а на месте результата 2 нужно ввести 0. Например: if([Оплата]>1000000;1;0)
При необходимости скрыть строки, удовлетворяющие условию, и отобразить строки, не удовлетворяющие условию, нужно поменять 1 и 0 местами:
if([Оплата]>1000000;0;1)and
И
Проверяет выполнение нескольких условий.
(Условие 1)and(Условие 2), например: ([Оплата]>=1000000)and([Комиссия]=0)
or
Или
Проверяет выполнение хотя бы одного из условий.
(Условие 1)or(Условие 2), например:
([Оплата]>=1000000)or([Комиссия]=0)
not
Не
Меняет условие на противоположное.
Например, not([Депозит]>0) скроет все строки, где значения факта [Депозит]>0.
Также можно использовать данную функцию вместе с if:
if(not(условие);результат 1, если истинно;результат 2, если ложно).
В таком случае if(not([Оплата]>1000000);1;0) отобразит только те строки, в которых значения факта [Оплата] не превышают 1000000. При использовании if(not([Оплата]>1000000);0;1) такие строки наоборот будут скрыты.is null
Равно пустому значению
Возвращает пустые значения факта.
Например: is_null(Комиссия)
is not null
Не равно пустому значению
Возвращает значения факта, КРОМЕ пустых.
Например: not(is_null(Комиссия))
Операторы сравнения <
Меньше
Возвращает значения факта, которые меньше указанного.
Например: [Комиссия]<0
>
Больше
Возвращает значения факта, которые больше указанного.
Например: [Комиссия]>0
<=
Меньше или равно
Возвращает значения факта, которые меньше или равны указанному.
Например: [Комиссия]<=0
>=
Больше или равно
Возвращает значения факта, которые больше или равны указанному.
Например: [Комиссия]>=0
=
Равно
Возвращает значения фактов, которые равны друг другу или указанному значению.
Например: [Комиссия]=0
!=
Не равно
Возвращает значения факта, которые не равны указанному.
Например: [Оплата]!=[Итоговая сумма]
Математические функции +
Плюс
Возвращает сумму значений.
Например: [Стоимость товаров]+[Комиссия]!=[Итоговая сумма]
-
Минус
Возвращает разность значений.
Например: [Цена конкурента]-1 < [МРЦ]
*
Умножить
Возвращает произведение значений.
Например: [Тариф]*[Понижающий коэффициент]>=500000
/
Разделить
Возвращает частное значений.
Например: [Лучшая цена]/[НМЦК]>=0,9
()
Скобки
Используются для изменения порядка вычислений.
Например: ([Итоговая сумма]-[Оплата])*100/[Комиссия]>=100000
Кнопки для создания формулы выборкиПримечание
Числовые значения, операторы сравнения и математические функции можно вводить с клавиатуры. Для указания дробной части числа используйте точку.
Пример введенной формулы:
Введенная формула- После того, как условия будут заданы, необходимо нажать кнопку «Создать». Если формула задана корректно, произойдет перестройка области данных окна мультисферы согласно формуле. Если формула некорректна, поле формулы будет выделено красным и выборка применена не будет.
Для удаления элемента формулы, введенного по ошибке, используйте клавишу Backspace.
Нажатие на крестик в правом верхнем углу поля ввода формулы удаляет всю введенную формулу.
При нажатии на кнопку «Отменить» окно «Выборка» закроется, выборка применена не будет, а введенная формула не будет отображаться при повторном открытии окна.
Когда к мультисфере применена выборка, в верхней части окна мультисферы отображается активная кнопка
. Для того чтобы снять выборку с мультисферы, необходимо нажать на данную кнопку. Кнопка изменит цвет , а условия выборки будут отменены. Повторное нажатие на кнопку применяет последнюю созданную формулу выборки.В случае ввода в поле для формулы некорректных данных отображается окно с ошибкой:
Выборка с учетом вложенных размерностей
Если в мультисфере вынесено несколько размерностей влево, в зависимости от вида факта и типа расчета выборка работает следующим образом:
- Выборка для простых и относительных фактов учитывает значения, соответствующие элементам последней вложенной размерности, даже если все элементы размерностей свернуты.
- Выборка для сложных фактов при расчете по уровню учитывает значения последнего уровня, на котором есть полезные данные. Таким образом, при вынесении нескольких размерностей влево и при расчете сложного факта по уровню, установленному по умолчанию, выборка будет учитывать значения предпоследнего уровня вложенности, так как для последней вложенной размерности сложный факт имеет нулевые значения. При вынесении нескольких размерностей влево и при расчете сложного факта по уровню 2 выборка будет учитывать значения уровня, предшествующего двум последним уровням вложенности. При расчете по уровню 3 выборка будет учитывать значения уровня, предшествующего трем последним уровням вложенности, и так далее.
- Выборка для сложных фактов при расчете по опорной размерности учитывает значения факта для элементов опорной размерности.
Выборка для сложных фактов с расчетом по уровню требует вынесения не менее двух размерностей влево.
Выборка и фильтр размерностей
Выборку можно применять к размерности, на которую наложен фильтр. При снятии фильтра с размерности в окне мультисферы, где применена выборка, выборка должна примениться и к строкам, которые были ранее скрыты наложенным фильтром. Строки, удовлетворяющие условиям выборки, будут отображены, остальные — скрыты.
Аналогичным образом можно применять фильтр к размерности в окне мультисферы, где применена выборка. При снятии выборки фильтр должен примениться и к строкам, которые были ранее скрыты выборкой. Строки, удовлетворяющие условиям наложенного фильтра, будут отображены, остальные — скрыты.