Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ІАД_ПЗС-1344_Поліщук_Лабораторний практикум.docx
Скачиваний:
29
Добавлен:
01.07.2025
Размер:
11 Мб
Скачать

Лабораторная работа № 2 трансформация данных

    1. Разбиение даты

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

Такая операция требуется потому, что очень часто интересным для анализа является не сама дата, а ее производная. Например, для анализа посещаемости магазина интересен день недели, а для оценки загруженности касс – час.

Значения нового столбца, полученного после применения преобразования даты, могут быть одного из трех типов: строка, число или дата. Например, нужно из даты «10.04.2014» получить только месяц. Тогда в столбце строкового типа будет содержаться «2014-М14», и его уже нельзя использовать как дату, например, к нему нельзя снова применить преобразование даты. А в столбце типа «дата» будет значение «01.04.2014» – первый день месяца. К нему снова можно применить преобразование и получить, например, номер квартала. Новый столбец будет содержать значение 2 числового типа.

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

1) Необходимо получить данные по суммам взятых кредитов по неделям (в файле Credit.txt содержится информация за первые две недели 2013 года).

В новом проекте выполнить импорт данных из файла Credit.txt.

При импорте указывать заголовок узла – фамилию студента (см. Лабораторную работу №1).

  1. Обработка полученных данных.

Для этого в Мастере обработки Дата и Время на втором шаге выберем для поля Дата кредитования (рис. 2.1):

Назначение – Используемое, напротив строки Год + Неделя – тип данных

Строка.

Рисунок 2.1 – Обработка Дата кредитования

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

  1. Выберем в качестве визуализатора Куб. В Мастере настройки полей куба выберем в качестве измерения появившийся после обработки столбец Дата кредитования (Год + Неделя) и столбец Цель кредитования, а в качестве факта – Сумма кредита. Остальные поля оставим неиспользуемыми (рис. 2.2).

Рисунок 2.2 – Выбор доступных измерений

  1. На следующем шаге перенесем одно измерение из области Доступных в область Измерения в строках, а другое – в область Измерения в столбцах (рис. 2.3).

Рисунок 2.3 – Настройка перемещений измерений

  1. На шаге Настройка фактов выбираем для факта Сумма кредита

вариант агрегации – Сумма (рис. 2.4).

Рисунок 2.4 – Выбор варианта агрегации

Таким образом, на кросс-диаграмме имеем суммы взятых кредитов по неделям (за первые две недели года) в разрезе целей кредитования.

Результат сохранить в файле L2_1.ded.

    1. Преобразование данных к скользящему окну

При решении некоторых задач, например, при прогнозировании временных рядов при помощи нейросети, требуется подавать на вход модели значения нескольких смежных отсчетов из исходного набора данных. Такой метод отбора данных называется скользящим окном (окно – поскольку выделяется только некоторый непрерывный участок данных, скользящее – поскольку это окно «перемещается» по всему набору). При этом эффективность реализации заметно повышается, если не выбирать данные каждый раз из нескольких последовательных записей, а последовательно расположить данные, относящиеся к конкретной позиции окна, в одной записи.

Значения в одном из полей записи будут относиться к текущему отсчету, а в других – смещены от текущего отсчета «в будущее» или «в прошлое». Таким образом, преобразование скользящего окна имеет два параметра:

  • глубина погружения – количество «прошлых» отсчетов, попадающих в окно;

  • горизонт прогнозирования – количество «будущих» отсчетов.

Следует отметить, что для граничных (относительно начала и конца всей выборки) положений окна будут формироваться неполные записи, т.е. записи, содержащие пустые значения для отсутствующих прошлых или будущих отсчетов. Алгоритм преобразования позволяет исключить такие записи из выборки (тогда для нескольких граничных отсчетов записи формироваться не будут); либо включить их (тогда формируются записи для всех имеющихся отсчетов, но некоторые из них будут неполными). Отметим, что для правильного формирования скользящего окна данные должны быть соответствующим образом упорядочены.

Когда требуется прогнозировать временной ряд, тем более, если налицо его периодичность (сезонность), то лучшего результата можно добиться, учитывая значения факторов не только в данный момент времени, но и, например, за аналогичный период прошлого года. Такую возможность можно получить после трансформации данных к скользящему окну. То есть, например, при сезонности продаж с периодом 12 месяцев, для прогнозирования количества продаж на месяц вперед можно в качестве входного фактора указать не только значение количества продаж за предыдущий месяц, но и за 12 месяцев назад.

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

1) У аналитика имеются данные о месячном количестве проданного товара за несколько лет. Ему необходимо, основываясь на этих данных, сказать, какое количество товара будет продано через неделю и через две.

Исходные данные по продажам находятся в файле Trade.txt.

Выполним в новом проекте импорт данных из файла, не забыв указать в Мастере, чтобы в качестве разделителя дробной и целой части была точка, а не запятая. Выполнив удаление аномалий и сглаживание (см. Лабораторную работу №1), получаем следующий результат (рис. 2.5).

2) Приведение данных к скользящему окну.

Запустим Мастер обработки, выберем в качестве обработчика

скользящее окно (рис. 2.6) и перейдем к следующему шагу.

В дальнейшем, используя обработчик Автокорреляция мы сможем убедиться в наличии годовой сезонности данных. Поэтому, строить прогноз на месяц вперед можно, основываясь на данных за 1, 2, 11 и 12 месяцев назад. Поэтому необходимо, назначив поле Количество используемым, выбрать глубину погружения 12. Тогда данные трансформируются к скользящему

окну так, что аналитику будут доступны все требуемые факторы для построения прогноза.

Рисунок 2.5 – Результат импорта

Рисунок 2.6 – Выбор обработчика Скользящее окно

3) Просмотреть полученные данные можно в виде таблицы (рис. 2.7).

Рисунок 2.7 – Результат обработки

Как видно, теперь в качестве входных факторов можно использовать Количество 12, Количество 11 – данные по количеству 12 и 11 месяцев назад (относительно прогнозируемого месяца) и остальные необходимые факторы. В качестве результата прогноза будет указан столбец Количество.

Результаты сохранить в файле L2_2.ded.