Узел «Набор данных» является начальным узлом любого сценария моделирования, позволяет выбрать необходимый для моделирования набор данных из списка зарегистрированных и задать конфигурацию переменных.
При конфигурировании переменных Пользователь может указать необходима ли переменная далее в процессе моделирования, а также указать необходимо ли регистрировать переменную при регистрации модели.
Помимо этого, Пользователь может отфильтровать, а также случайным образом отобрать наблюдения, которые далее будут использоваться в сценарии моделирования.
Список параметров узла представлен в таблице (Таблица 7).
Таблица 7 — Параметры узла «Набор данных»
Параметр |
Возможные значения и ограничения |
Описание |
---|---|---|
Название |
Ручной ввод |
Название узла, которое будет отображаться в интерфейсе |
Описание |
Ручной ввод |
Описание узла |
Имя набора данных |
Раскрывающийся список с названиями наборов данных |
Список доступных пользователю наборов данных |
Конфигурация переменных |
Кнопка |
При выборе кнопки откроется окно Конфигурация переменных (подробное описание ниже). |
Фильтр |
Поле ввода условия фильтрации |
При выборе поля ввода откроется окно Формула (подробное описание ниже). |
Доля наблюдений для выборки |
Ручной ввод |
Данный параметр задает долю наблюдений исходного набора данных, которые будут включены в итоговый набор данных |
Максимальное количество загружаемых строк |
Ручной ввод целочисленного значения |
Данный параметр ограничивает количество строк, которые будут использоваться в ходе моделирования |
Окно Конфигурация переменных
В окне Конфигурация переменных (Рисунок 64) Пользователь может ознакомиться с входными переменными узла и указать на необходимость регистрировать переменную при сохранении модели в репозиторий (столбец Регистрация) и необходимость данной переменной при построении дальнейшего сценария (столбец Дроп).
При выборе Регистрация (значение Да) данная переменная будет зарегистрирована при сохранении модели в репозиторий MM.
При выборе Дроп (значение Да) далее в сценарии данная переменная использоваться не будет и вернуть ее в процесс будет невозможно. Для временного исключения атрибута необходимо назначить ему роль Исключен (подробнее узел «Метаданные»).
ВАЖНО: Целевой переменной на данном шаге необходимо задать значение Нет в столбце Регистрация. Это необходимо, чтобы далее данная переменная не фигурировала при регистрации и при публикации в MM.
Роль и Тип переменной можно изменить в узле "Метаданные". Тип источника задается автоматически: если переменная из исходного набора данных, то указано значение Base, если рассчитана в системе - значение Computed.
Рисунок 64 – Окно Конфигурация переменных
Окно Формула
В окне Формула задается условие отбора наблюдений из исходного набора данных.
Основными элементами окна Формула (Рисунок 65) являются:
Рисунок 65 – Окно Формула
- Строка ввода текстового представления условия.
- Рабочее поле, в котором строится графическое представление условия.
- Вкладка, которая открывается при щелчке правой кнопкой мыши в строке ввода, и включает в себя:
- Переменные из набора данных.
- Операторы и функции, представленные в таблице (Таблица 8).
Позволяет просматривать переменные набора данных и строить конструкции условий.
Для задания условия необходимо:
- В строку текстового представления ввести условие, используя операторы, функции (Таблица 8) и переменные набора данных.
- Название переменной должно быть указано в обратных одинарных кавычках (` `). Пример: `Год` > 1996.
- В качестве десятичного разделителя используется точка.
- Строка должна указываться в двойных кавычках. Пример: `Пол` = "мужской".
- Посмотреть список операторов, функций и переменных, а также добавить их в условие можно и в панели, которая открывается при щелчке правой кнопкой мыши по строке ввода.
Таблица 8 — Операторы и функции
Оператор/Функция |
Описание |
Текстовое представление (формула) |
---|---|---|
And |
Логическая операция «И» |
|
true and true |
Вместо true нужно вставить условие
Пример: `Год` > 1996 and `Пол`= "Женский"|
Or |
Логическая операция «ИЛИ» |
|
true or true |
Вместо true нужно вставить условие
Пример: `Год` > 1996 or `Пол`= "Женский"|
+ |
Операция сложения |
|
0 + 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: `Цена продукта M`+ ` Цена продукта M`|
– |
Операция вычитания |
|
0 - 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: `Цена продукта M`- 1000|
× |
Операция умножения |
|
0 *** 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: `Цена продукта M` * `Скидка`|
/ |
Операция деления |
|
0 / 0 |
Вместо 0 нужно вставить числовое значение/числовую переменную
Пример: `Выручка за первый квартал` / `Выручка за год`|
< |
Меньше |
|
"" < "" |
Вместо "" нужно вставить переменную/значение
Пример: `Возраст` < 32|
≤ |
Меньше или равно |
|
"" <= "" |
Вместо "" нужно вставить переменную/значение
Пример: `Температура` <= 120|
> |
Больше |
|
"" > "" |
Вместо "" нужно вставить переменную/значение
Пример: `Возраст` > "32"|
≥ |
Больше или равно |
|
"" >= "" |
Вместо "" нужно вставить переменную/значение
Пример: `Температура` >= 120|
= |
Равно |
|
"" = "" |
Вместо "" нужно вставить переменную/значение
Пример: `Температура` = 120|
≠ |
Не равно |
|
"" != "" |
Вместо "" нужно вставить переменную/значение
Пример: `Температура` != 120|
like |
Проверяет, удовлетворяет ли символьная строка заданному образцу, который может содержать поисковые символы. Учитывает регистр |
|
"" like "" |
Вместо "" нужно вставить переменную/значение
Пример: `Город` like "Москва"|
ilike |
Проверяет, удовлетворяет ли символьная строка заданному образцу, который может содержать поисковые символы. |
|
"" ilike "" |
Вместо "" нужно вставить переменную/значение
Пример: `Город` ilike "Москва"|
startswith |
Проверяет, есть ли в начале одной текстовой строки другая текстовая строка |
|
"" 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 — Таблица с результатами сэмплирования