Узел «Набор данных» является начальным узлом любого сценария моделирования, позволяет выбрать необходимый для моделирования набор данных из списка зарегистрированных и задать конфигурацию переменных.
При конфигурировании переменных Пользователь может указать необходима ли переменная далее в процессе моделирования, а также указать необходимо ли регистрировать переменную при регистрации модели.
Помимо этого, Пользователь может отфильтровать, а также случайным образом отобрать наблюдения, которые далее будут использоваться в сценарии моделирования.
Список параметров узла представлен в таблице (Таблица 7).
Таблица 7 — Параметры узла «Набор данных»
Параметр | Возможные значения и ограничения | Описание |
---|---|---|
Название | Ручной ввод | Название узла, которое будет отображаться в интерфейсе |
Описание | Ручной ввод | Описание узла |
Имя набора данных | Раскрывающийся список с названиями наборов данных | Список доступных пользователю наборов данных |
Конфигурация переменных | Кнопка | При выборе кнопки откроется окно Конфигурация переменных (подробное описание ниже). |
Фильтр | Поле ввода условия фильтрации | При выборе поля ввода откроется окно Формула (подробное описание ниже). |
Доля наблюдений для выборки | Ручной ввод | Данный параметр задает долю наблюдений исходного набора данных, которые будут включены в итоговый набор данных |
Максимальное количество загружаемых строк | Ручной ввод целочисленного значения | Данный параметр ограничивает количество строк, которые будут использоваться в ходе моделирования |
Окно Конфигурация переменных
В окне Конфигурация переменных (Рисунок 64) Пользователь может ознакомиться с входными переменными узла и указать на необходимость регистрировать переменную при сохранении модели в репозиторий (столбец Регистрация) и необходимость данной переменной при построении дальнейшего сценария (столбец Дроп).
При выборе Регистрация (значение Да) данная переменная будет зарегистрирована при сохранении модели в репозиторий MM.
При выборе Дроп (значение Да) далее в сценарии данная переменная использоваться не будет и вернуть ее в процесс будет невозможно. Для временного исключения атрибута необходимо назначить ему роль Исключен (подробнее узел «Метаданные»).
ВАЖНО: Целевой переменной на данном шаге необходимо задать значение Нет в столбце Регистрация. Это необходимо, чтобы далее данная переменная не фигурировала при регистрации и при публикации в MM.
Роль и Тип переменной можно изменить в узле "Метаданные". Тип источника задается автоматически: если переменная из исходного набора данных, то указано значение Base, если рассчитана в системе - значение Computed.
Рисунок 64 – Окно Конфигурация переменных
Окно Формула
В окне Формула задается условие отбора наблюдений из исходного набора данных.
Основными элементами окна Формула (Рисунок 65) являются:
Рисунок 65 – Окно Формула
- Строка ввода текстового представления условия.
- Рабочее поле, в котором строится графическое представление условия.
- Вкладка, которая открывается при щелчке правой кнопкой мыши в строке ввода, и включает в себя:
- Переменные из набора данных.
- Операторы и функции, представленные в таблице (Таблица 8).
Позволяет просматривать переменные набора данных и строить конструкции условий.
Для задания условия необходимо:
- В строку текстового представления ввести условие, используя операторы, функции (Таблица 8) и переменные набора данных.
- Название переменной должно быть указано в обратных одинарных кавычках (` `). Пример: `Год` > 1996.
- В качестве десятичного разделителя используется точка.
- Строка должна указываться в двойных кавычках. Пример: `Пол` = "мужской".
- Посмотреть список операторов, функций и переменных, а также добавить их в условие можно и в панели, которая открывается при щелчке правой кнопкой мыши по строке ввода.
Таблица 8 — Операторы и функции
Оператор/Функция | Описание | Текстовое представление (формула) |
---|---|---|
And | Логическая операция «И» | true and true |
Вместо true нужно вставить условие | ||
Or | Логическая операция «ИЛИ» | true or true |
Вместо true нужно вставить условие | ||
+ | Операция сложения | 0 + 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную | ||
– | Операция вычитания | 0 - 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную | ||
× | Операция умножения | 0 * 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную | ||
/ | Операция деления | 0 / 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную | ||
< | Меньше | "" < "" |
Вместо "" нужно вставить переменную/значение | ||
≤ | Меньше или равно | "" <= "" |
Вместо "" нужно вставить переменную/значение | ||
> | Больше | "" > "" |
Вместо "" нужно вставить переменную/значение | ||
≥ | Больше или равно | "" >= "" |
Вместо "" нужно вставить переменную/значение | ||
= | Равно | "" = "" |
Вместо "" нужно вставить переменную/значение | ||
≠ | Не равно | "" != "" |
Вместо "" нужно вставить переменную/значение | ||
like | Проверяет, удовлетворяет ли символьная строка заданному образцу, который может содержать поисковые символы. Учитывает регистр | "" like "" |
Вместо "" нужно вставить переменную/значение | ||
ilike | Проверяет, удовлетворяет ли символьная строка заданному образцу, который может содержать поисковые символы. | "" ilike "" |
Вместо "" нужно вставить переменную/значение | ||
startswith | Проверяет, есть ли в начале одной текстовой строки другая текстовая строка | "" startswith "" |
Вместо "" нужно вставить переменную/значение | ||
endswith | Проверяет, есть ли в конце одной текстовой строки другая текстовая строка | |
"" endswith "" |
Вместо "" нужно вставить переменную/значение
Пример: `Город` endswith "бург"|
contains | Проверяет, есть ли совпадения с отдельными словами или фразами | |
"" contains "" |
Вместо "" нужно вставить переменную/значение
Пример: `Название` contains "consulting"|
between | Проверяет, входит ли значение в определённый диапазон | |
0 between(0,0) |
Вместо 0 нужно вставить числовую переменную/значение
Пример: `ID` between (1, 100500)|
in | Используются для сравнения проверяемого значения поля с заданным списком | |
"" in("") |
Вместо "" нужно вставить переменную/значение
Пример: `Регион` in ("Москва", "Московская область")|
not in | Используются для сравнения проверяемого значения поля с заданным списком | |
"" not_in("") |
Вместо "" нужно вставить переменную/значение
Пример: `Регион` not_in ("Москва", "Московская область")|
coalesce | Возвращает данные из первого столбца, содержащего значение, отличное от NULL | |
coalesce("") |
Вместо "" нужно вставить переменную/значение
Пример: coalesce(`ProductNumber`, `ProductName`)|
not | Задает противоположное условие | |
not(true) |
Вместо true нужно вставить условие
Пример: not(`Год` > 1996)|
create_date | Создает переменную даты из последовательно введенных года, месяца и дня | |
create_date(0,0,0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: create_date(2016,10,25)|
current_date | Возвращает текущую дату | |
current_date() |
Вводится без дополнительных параметров|
current_timestamp | Возвращает текущие дату и время | |
current_timestamp() |
Вводится без дополнительных параметров|
now | Возвращает текущие дату и время | |
now() |
Вводится без дополнительных параметров|
create_datetime | Создает переменную даты времени из последовательно введенных года месяца дня часа минут и секунд | |
create_datetime(0,0,0,0,0,0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: create_datetime(2016,10,25,12,18,0)|
char_length | Возвращает длину строки | |
char_length("") |
Вместо "" нужно вставить строку/строковую переменную
Пример: char_length(`Код_продукта`)|
random | Возвращает случайное число | |
random() |
Вводится без дополнительных параметров|
In | Натуральный логарифм | |
ln(0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: ln(`Числовая переменная`)|
exp | Экспонента | |
exp(0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: exp (`Числовая переменная`)|
power | Возведение в степень | |
power(0,0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: power(`Числовая переменная`,2)|
sqrt | Квадратный корень | |
sqrt(0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: sqrt (`Числовая переменная`)|
abs | Абсолютное значение | |
abs(0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: abs (`Числовая переменная`)|
ceil | Возвращает наименьшее целое число, которое больше или равно текущему значению | |
ceil(0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: ceil(25.1)
Вернет значение 26|
floor | Возвращает наибольшее целое число, которое меньше или равно текущему значению | |
floor(0) |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: floor(25.1)
Вернет значение 25|
extract_from_datetime | Получает указанную часть (день, месяц, год, час, минута, секунда) из значения даты и времени | |
extract_from_datetime("","") |
Вместо первых кавычек нужно указать необходимую часть для извлечения:
- SECOND
- MINUTE
- HOUR
- DAY
- MONTH
YEAR
Вместо вторых кавычек нужно указать переменную типа datetime
Пример: extract_from_datetime("DAY",`datetime`)|extract_from_date
Получает указанную часть (день, месяц, год) из значения даты
extract_from_date("","")
В первые кавычки нужно вписать необходимую часть для извлечения:- DAY
- MONTH
YEAR
Вместо вторых кавычек нужно указать переменную типа date
Пример: extract_from_date("DAY",`date`)|concat
Объединяет в единую строку указанные значения
concat("")
Вместо "" нужно вставить строкb/строковые переменные
Пример:
concat (`Фамилия`, " ", `Имя`)|
Результаты выполнения узла:- Таблица с примером данных (Рисунок 66). Отображаются первые 100 наблюдений.
Рисунок 66 — Таблица с примером данных
- Таблица с результатами сэмплирования.
Рисунок 67 — Таблица с результатами сэмплирования